{
 "cells": [
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# FSRS4Anki Optimizer RNN"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "[![open in colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/open-spaced-repetition/fsrs4anki/blob/main/archive/experiment/RNN.ipynb)\n",
    "\n",
    "↑ Click the above button to open the optimizer on Google Colab.\n",
    "\n",
    "> If you can't see the button and are located in the Chinese Mainland, please use a proxy or VPN."
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Upload your **Anki Deck Package (.apkg)** file or **Anki Collection Package (.colpkg)** file on the `Left sidebar -> Files`, drag and drop your file in the current directory (not the `sample_data` directory). \n",
    "\n",
    "No need to include media. Need to include scheduling information. \n",
    "\n",
    "> If you use the latest version of Anki, please check the box `Support older Anki versions (slower/larger files)` when you export.\n",
    "\n",
    "You can export it via `File -> Export...` or `Ctrl + E` in the main window of Anki.\n",
    "\n",
    "Then replace the `filename` with yours in the next code cell. And set the `timezone` and `next_day_starts_at` which can be found in your preferences of Anki.\n",
    "\n",
    "After that, just run all (`Runtime -> Run all` or `Ctrl + F9`) and wait for minutes. You can see the optimal parameters in section **2.3 Result**. Copy them, replace the parameters in `fsrs4anki_scheduler.js`, and paste them into the custom scheduling of your deck options (require Anki version >= 2.1.55).\n",
    "\n",
    "**NOTE**: The default output is generated from my review logs. If you find the output is the same as mine, maybe your notebook hasn't run there.\n",
    "\n",
    "**Contribute to SRS Research**: If you want to share your data with me, please fill this form: https://forms.gle/KaojsBbhMCytaA7h8"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Here are some settings that you need to replace before running this optimizer.\n",
    "\n",
    "filename = \"../collection-2022-09-18@13-21-58.colpkg\"\n",
    "# If you upload deck file, replace it with your deck filename. E.g., ALL__Learning.apkg\n",
    "# If you upload collection file, replace it with your colpgk filename. E.g., collection-2022-09-18@13-21-58.colpkg\n",
    "\n",
    "# Replace it with your timezone. I'm in China, so I use Asia/Shanghai.\n",
    "# You can find your timezone here: https://gist.github.com/heyalexej/8bf688fd67d7199be4a1682b3eec7568\n",
    "timezone = 'Asia/Shanghai'\n",
    "\n",
    "# Replace it with your Anki's setting in Preferences -> Scheduling.\n",
    "next_day_starts_at = 4\n",
    "\n",
    "# Replace it if you don't want the optimizer to use the review logs before a specific date.\n",
    "revlog_start_date = \"2006-10-05\""
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1 Build dataset"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1.1 Extract Anki collection & deck file"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Extract successfully!\n"
     ]
    }
   ],
   "source": [
    "import zipfile\n",
    "import sqlite3\n",
    "import time\n",
    "from tqdm import notebook\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import os\n",
    "from datetime import timedelta, datetime\n",
    "import matplotlib.pyplot as plt\n",
    "import math\n",
    "import torch\n",
    "torch.manual_seed(42)\n",
    "from torch import nn\n",
    "import warnings\n",
    "\n",
    "notebook.tqdm.pandas()\n",
    "warnings.filterwarnings(\"ignore\", category=UserWarning)\n",
    "\n",
    "\n",
    "# Extract the collection file or deck file to get the .anki21 database.\n",
    "with zipfile.ZipFile(f'./{filename}', 'r') as zip_ref:\n",
    "    zip_ref.extractall('./')\n",
    "    print(\"Extract successfully!\")\n"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 1.2 Create time-series feature & analysis\n",
    "\n",
    "The following code cell will extract the review logs from your Anki collection and preprocess them to a trainset which is saved in [./revlog_history.tsv](./revlog_history.tsv).\n",
    "\n",
    "The time-series features are important in optimizing the model's parameters. For more detail, please see my paper: https://www.maimemo.com/paper/\n",
    "\n",
    "Then it will generate a concise analysis for your review logs. \n",
    "\n",
    "- The `r_history` is the history of ratings on each review. `3,3,3,1` means that you press `Good, Good, Good, Again`. It only contains the first rating for each card on the review date, i.e., when you press `Again` in review and  `Good` in relearning steps 10min later, only `Again` will be recorded.\n",
    "- The `avg_interval` is the actual average interval after you rate your cards as the `r_history`. It could be longer than the interval given by Anki's built-in scheduler because you reviewed some overdue cards.\n",
    "- The `avg_retention` is the average retention after you press as the `r_history`. `Again` counts as failed recall, and `Hard, Good and Easy` count as successful recall. Retention is the percentage of your successful recall.\n",
    "- The `stability` is the estimated memory state variable, which is an approximate interval that leads to 90% retention.\n",
    "- The `factor` is `stability / previous stability`.\n",
    "- The `group_cnt` is the number of review logs that have the same `r_history`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "revlog.csv saved.\n",
      "Trainset saved.\n",
      "Retention calculated.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ad3b735bd2fb4c2f940bfa85076573a6",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/64224 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Stability calculated.\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "51c96e1d756442f199e4a0fe0777c1e5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/1196 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1:again, 2:hard, 3:good, 4:easy\n",
      "\n",
      "      r_history  avg_interval  avg_retention  stability  factor  group_cnt\n",
      "              1           1.7          0.765        1.0     inf       7997\n",
      "            1,3           3.9          0.877        4.2    4.20       4174\n",
      "          1,3,3           8.5          0.882        9.1    2.17       2711\n",
      "        1,3,3,3          17.8          0.860       13.8    1.52       1619\n",
      "      1,3,3,3,3          36.4          0.833       22.3    1.62        845\n",
      "    1,3,3,3,3,3          74.7          0.861       36.4    1.63        402\n",
      "  1,3,3,3,3,3,3         118.2          0.895       38.5    1.06        182\n",
      "              2           1.0          0.901        1.1     inf        240\n",
      "            2,3           3.5          0.946        8.3    7.55        201\n",
      "          2,3,3          11.1          0.890        7.1    0.86        160\n",
      "              3           1.5          0.962        5.4     inf       9134\n",
      "            3,3           3.9          0.966       15.2    2.81       6588\n",
      "          3,3,3           9.0          0.960       23.5    1.55       5166\n",
      "        3,3,3,3          19.1          0.941       43.5    1.85       3542\n",
      "      3,3,3,3,3          35.9          0.931       53.0    1.22       1976\n",
      "    3,3,3,3,3,3          65.0          0.928       97.6    1.84       1149\n",
      "  3,3,3,3,3,3,3         100.9          0.947      142.9    1.46        537\n",
      "3,3,3,3,3,3,3,3         133.6          0.990     1821.9   12.75        131\n",
      "              4           3.8          0.966       12.1     inf      11599\n",
      "            4,3           8.1          0.975       39.0    3.22       7515\n",
      "          4,3,3          17.8          0.963       56.5    1.45       5307\n",
      "        4,3,3,3          32.1          0.952       82.6    1.46       3032\n",
      "      4,3,3,3,3          46.3          0.956      125.4    1.52       1380\n",
      "    4,3,3,3,3,3          67.5          0.956      115.3    0.92        534\n",
      "  4,3,3,3,3,3,3          78.3          0.978      117.5    1.02        253\n",
      "4,3,3,3,3,3,3,3         114.1          0.984      177.8    1.51        166\n",
      "Analysis saved!\n"
     ]
    }
   ],
   "source": [
    "if os.path.isfile(\"collection.anki21b\"):\n",
    "    os.remove(\"collection.anki21b\")\n",
    "    raise Exception(\n",
    "        \"Please export the file with `support older Anki versions` if you use the latest version of Anki.\")\n",
    "elif os.path.isfile(\"collection.anki21\"):\n",
    "    con = sqlite3.connect(\"collection.anki21\")\n",
    "elif os.path.isfile(\"collection.anki2\"):\n",
    "    con = sqlite3.connect(\"collection.anki2\")\n",
    "else:\n",
    "    raise Exception(\"Collection not exist!\")\n",
    "cur = con.cursor()\n",
    "res = cur.execute(\"SELECT * FROM revlog\")\n",
    "revlog = res.fetchall()\n",
    "\n",
    "df = pd.DataFrame(revlog)\n",
    "df.columns = ['id', 'cid', 'usn', 'r', 'ivl',\n",
    "              'last_lvl', 'factor', 'time', 'type']\n",
    "df = df[(df['cid'] <= time.time() * 1000) &\n",
    "        (df['id'] <= time.time() * 1000) &\n",
    "        (df['r'] > 0)].copy()\n",
    "df['create_date'] = pd.to_datetime(df['cid'] // 1000, unit='s')\n",
    "df['create_date'] = df['create_date'].dt.tz_localize(\n",
    "    'UTC').dt.tz_convert(timezone)\n",
    "df['review_date'] = pd.to_datetime(df['id'] // 1000, unit='s')\n",
    "df['review_date'] = df['review_date'].dt.tz_localize(\n",
    "    'UTC').dt.tz_convert(timezone)\n",
    "df.drop(df[df['review_date'].dt.year < 2006].index, inplace=True)\n",
    "df.sort_values(by=['cid', 'id'], inplace=True, ignore_index=True)\n",
    "type_sequence = np.array(df['type'])\n",
    "time_sequence = np.array(df['time'])\n",
    "df.to_csv(\"revlog.csv\", index=False)\n",
    "print(\"revlog.csv saved.\")\n",
    "df = df[(df['type'] != 3) | (df['factor'] != 0)].copy()\n",
    "df['real_days'] = df['review_date'] - timedelta(hours=next_day_starts_at)\n",
    "df['real_days'] = pd.DatetimeIndex(df['real_days'].dt.floor('D', ambiguous='infer', nonexistent='shift_forward')).to_julian_date()\n",
    "df.drop_duplicates(['cid', 'real_days'], keep='first', inplace=True)\n",
    "df['delta_t'] = df.real_days.diff()\n",
    "df.dropna(inplace=True)\n",
    "df['delta_t'] = df['delta_t'].astype(dtype=int)\n",
    "\n",
    "df['i'] = df.groupby('cid').cumcount() + 1\n",
    "df.loc[df['i'] == 1, 'delta_t'] = 0\n",
    "\n",
    "\n",
    "df = df.groupby('cid').filter(lambda group: group['type'].iloc[0] == 0)\n",
    "df['prev_type'] = df.groupby('cid')['type'].shift(1).fillna(0).astype(int)\n",
    "df['helper'] = (df['type'] == 0) & ((df['prev_type'] == 1) | (df['prev_type'] == 2)) & (df['i'] > 1)\n",
    "df['helper'] = df['helper'].astype(int)\n",
    "df['helper'] = df.groupby('cid')['helper'].cumsum()\n",
    "df = df[df['helper'] == 0]\n",
    "del df['prev_type']\n",
    "del df['helper']\n",
    "from itertools import accumulate\n",
    "\n",
    "def cum_concat(x):\n",
    "    return list(accumulate(x))\n",
    "\n",
    "t_history = df.groupby('cid', group_keys=False)['delta_t'].apply(lambda x: cum_concat([[i] for i in x]))\n",
    "df['t_history']=[','.join(map(str, item[:-1])) for sublist in t_history for item in sublist]\n",
    "r_history = df.groupby('cid', group_keys=False)['r'].apply(lambda x: cum_concat([[i] for i in x]))\n",
    "df['r_history']=[','.join(map(str, item[:-1])) for sublist in r_history for item in sublist]\n",
    "df = df[df['id'] >= time.mktime(datetime.strptime(revlog_start_date, \"%Y-%m-%d\").timetuple()) * 1000]\n",
    "df.to_csv('revlog_history.tsv', sep=\"\\t\", index=False)\n",
    "print(\"Trainset saved.\")\n",
    "\n",
    "df['y'] = df['r'].map(lambda x: {1: 0, 2: 1, 3: 1, 4: 1}[x])\n",
    "df['retention'] = df.groupby(by=['r_history', 'delta_t'], group_keys=False)['y'].transform('mean')\n",
    "df['total_cnt'] = df.groupby(by=['r_history', 'delta_t'], group_keys=False)['id'].transform('count')\n",
    "print(\"Retention calculated.\")\n",
    "df = df.drop(columns=['id', 'cid', 'usn', 'ivl', 'last_lvl', 'factor', 'time', 'type', 'create_date', 'review_date', 'real_days', 'r', 't_history', 'y'])\n",
    "df.drop_duplicates(inplace=True)\n",
    "df['retention'] = df['retention'].map(lambda x: max(min(0.99, x), 0.01))\n",
    "\n",
    "def cal_stability(group: pd.DataFrame) -> pd.DataFrame:\n",
    "    group_cnt = sum(group['total_cnt'])\n",
    "    if group_cnt < 10:\n",
    "        return pd.DataFrame()\n",
    "    group['group_cnt'] = group_cnt\n",
    "    if group['i'].values[0] > 1:\n",
    "        r_ivl_cnt = sum(group['delta_t'] * group['retention'].map(np.log) * pow(group['total_cnt'], 2))\n",
    "        ivl_ivl_cnt = sum(group['delta_t'].map(lambda x: x ** 2) * pow(group['total_cnt'], 2))\n",
    "        group['stability'] = round(np.log(0.9) / (r_ivl_cnt / ivl_ivl_cnt), 1)\n",
    "    else:\n",
    "        group['stability'] = 0.0\n",
    "    group['avg_retention'] = round(sum(group['retention'] * pow(group['total_cnt'], 2)) / sum(pow(group['total_cnt'], 2)), 3)\n",
    "    group['avg_interval'] = round(sum(group['delta_t'] * pow(group['total_cnt'], 2)) / sum(pow(group['total_cnt'], 2)), 1)\n",
    "    del group['total_cnt']\n",
    "    del group['retention']\n",
    "    del group['delta_t']\n",
    "    return group\n",
    "\n",
    "df = df.groupby(by=['r_history'], group_keys=False).progress_apply(cal_stability)\n",
    "print(\"Stability calculated.\")\n",
    "df.reset_index(drop = True, inplace = True)\n",
    "df.drop_duplicates(inplace=True)\n",
    "df.sort_values(by=['r_history'], inplace=True, ignore_index=True)\n",
    "\n",
    "if df.shape[0] > 0:\n",
    "    for idx in notebook.tqdm(df.index):\n",
    "        item = df.loc[idx]\n",
    "        index = df[(df['i'] == item['i'] + 1) & (df['r_history'].str.startswith(item['r_history']))].index\n",
    "        df.loc[index, 'last_stability'] = item['stability']\n",
    "    df['factor'] = round(df['stability'] / df['last_stability'], 2)\n",
    "    df = df[(df['i'] >= 2) & (df['group_cnt'] >= 100)]\n",
    "    df['last_recall'] = df['r_history'].map(lambda x: x[-1])\n",
    "    df = df[df.groupby(['i', 'r_history'], group_keys=False)['group_cnt'].transform(max) == df['group_cnt']]\n",
    "    df.to_csv('./stability_for_analysis.tsv', sep='\\t', index=None)\n",
    "    print(\"1:again, 2:hard, 3:good, 4:easy\\n\")\n",
    "    print(df[df['r_history'].str.contains(r'^[1-4][^124]*$', regex=True)][['r_history', 'avg_interval', 'avg_retention', 'stability', 'factor', 'group_cnt']].to_string(index=False))\n",
    "    print(\"Analysis saved!\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2 Optimize parameter"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.1 Define the model\n",
    "\n",
    "FSRS is a time-series model for predicting memory states."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "class RNN(nn.Module):\n",
    "    def __init__(self, n_input=5, n_hidden=16, n_output=1, n_layers=1, network=\"GRU\", state_dict=None):\n",
    "        super().__init__()\n",
    "        self.n_input = n_input\n",
    "        self.n_hidden = n_hidden\n",
    "        self.n_out = n_output\n",
    "        self.n_layers = n_layers\n",
    "        if network == 'GRU':\n",
    "            self.rnn = nn.GRU(input_size=self.n_input, hidden_size=self.n_hidden, num_layers=self.n_layers)\n",
    "        elif network == \"LSTM\":\n",
    "            self.rnn = nn.LSTM(input_size=self.n_input, hidden_size=self.n_hidden, num_layers=self.n_layers)\n",
    "        else:\n",
    "            self.rnn = nn.RNN(input_size=self.n_input, hidden_size=self.n_hidden, num_layers=self.n_layers)\n",
    "\n",
    "        self.fc = nn.Linear(self.n_hidden, self.n_out)\n",
    "\n",
    "        if state_dict is not None:\n",
    "            self.load_state_dict(state_dict)\n",
    "\n",
    "    def forward(self, x, hx=None):\n",
    "        x, h = self.rnn(x, hx=hx)\n",
    "        output = torch.exp(self.fc(x))\n",
    "        return output, h\n",
    "\n",
    "    def full_connect(self, h):\n",
    "        return self.fc(h)\n",
    "\n",
    "def lineToTensor(line):\n",
    "    ivl = line[0].split(',')\n",
    "    response = line[1].split(',')\n",
    "    tensor = torch.zeros(len(response), 5)\n",
    "    for li, response in enumerate(response):\n",
    "        tensor[li][0] = int(ivl[li])\n",
    "        tensor[li][int(response)] = 1\n",
    "    return tensor\n",
    "\n",
    "from torch.utils.data import Dataset, DataLoader, Sampler\n",
    "from torch.nn.utils.rnn import pad_sequence, pack_padded_sequence, pad_packed_sequence\n",
    "from typing import List\n",
    "\n",
    "class RevlogDataset(Dataset):\n",
    "    def __init__(self, dataframe):\n",
    "        self.x_train = pad_sequence(dataframe['tensor'].to_list(), batch_first=True, padding_value=0)\n",
    "        self.t_train = torch.tensor(dataframe['delta_t'].values, dtype=torch.int)\n",
    "        self.y_train = torch.tensor(dataframe['y'].values, dtype=torch.float)\n",
    "        self.seq_len = torch.tensor(dataframe['tensor'].map(len).values, dtype=torch.long)\n",
    "\n",
    "    def __getitem__(self, idx):\n",
    "        return self.x_train[idx], self.t_train[idx], self.y_train[idx], self.seq_len[idx]\n",
    "\n",
    "    def __len__(self):\n",
    "        return len(self.y_train)\n",
    "    \n",
    "class RevlogSampler(Sampler[List[int]]):\n",
    "    def __init__(self, data_source, batch_size):\n",
    "        self.data_source = data_source\n",
    "        self.batch_size = batch_size\n",
    "        lengths = np.array(data_source.seq_len)\n",
    "        indices = np.argsort(lengths)\n",
    "        full_batches, remainder = divmod(indices.size, self.batch_size)\n",
    "        if full_batches > 0:\n",
    "            self.batch_indices = np.split(indices[:-remainder], full_batches)\n",
    "        else:\n",
    "            self.batch_indices = []\n",
    "        if remainder:\n",
    "            self.batch_indices.append(indices[-remainder:])\n",
    "        self.batch_nums = len(self.batch_indices)\n",
    "        # seed = int(torch.empty((), dtype=torch.int64).random_().item())\n",
    "        seed = 2023\n",
    "        self.generator = torch.Generator()\n",
    "        self.generator.manual_seed(seed)\n",
    "\n",
    "    def __iter__(self):\n",
    "        yield from [self.batch_indices[idx] for idx in torch.randperm(self.batch_nums, generator=self.generator).tolist()]\n",
    "\n",
    "    def __len__(self):\n",
    "        return len(self.data_source)\n",
    "\n",
    "\n",
    "def collate_fn(batch):\n",
    "    sequences, delta_ts, labels, seq_lens = zip(*batch)\n",
    "    sequences_packed = pack_padded_sequence(torch.stack(sequences, dim=1), lengths=torch.stack(seq_lens), batch_first=False, enforce_sorted=False)\n",
    "    sequences_padded, length = pad_packed_sequence(sequences_packed, batch_first=False)\n",
    "    sequences_padded = torch.as_tensor(sequences_padded)\n",
    "    seq_lens = torch.as_tensor(length)\n",
    "    delta_ts = torch.as_tensor(delta_ts)\n",
    "    labels = torch.as_tensor(labels)\n",
    "    return sequences_padded, delta_ts, labels, seq_lens\n",
    "\n",
    "class Optimizer(object):\n",
    "    def __init__(self, train_set, test_set, n_epoch=3, lr=4e-2, wd=1e-5, batch_size=512, network='LSTM') -> None:\n",
    "        self.model = RNN(network=network)\n",
    "        self.optimizer = torch.optim.Adam(self.model.parameters(), lr=lr, weight_decay=wd)\n",
    "        self.batch_size = batch_size\n",
    "        self.build_dataset(train_set, test_set)\n",
    "        self.n_epoch = n_epoch\n",
    "        self.batch_nums = self.next_train_data_loader.batch_sampler.batch_nums\n",
    "        self.scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(self.optimizer, T_max=self.batch_nums * n_epoch)\n",
    "        self.avg_train_losses = []\n",
    "        self.avg_eval_losses = []\n",
    "        self.loss_fn = nn.BCELoss(reduction='sum')\n",
    "\n",
    "    def build_dataset(self, train_set, test_set):\n",
    "        pre_train_set = train_set[train_set['i'] == 2]\n",
    "        self.pre_train_set = RevlogDataset(pre_train_set)\n",
    "        sampler = RevlogSampler(self.pre_train_set, batch_size=self.batch_size)\n",
    "        self.pre_train_data_loader = DataLoader(self.pre_train_set, batch_sampler=sampler, collate_fn=collate_fn)\n",
    "\n",
    "        next_train_set = train_set[train_set['i'] > 2]\n",
    "        self.next_train_set = RevlogDataset(next_train_set)\n",
    "        sampler = RevlogSampler(self.next_train_set, batch_size=self.batch_size)\n",
    "        self.next_train_data_loader = DataLoader(self.next_train_set, batch_sampler=sampler, collate_fn=collate_fn)\n",
    "\n",
    "        self.train_set = RevlogDataset(train_set)\n",
    "        sampler = RevlogSampler(self.train_set, batch_size=self.batch_size)\n",
    "        self.train_data_loader = DataLoader(self.train_set, batch_sampler=sampler, collate_fn=collate_fn)\n",
    "\n",
    "        self.test_set = RevlogDataset(test_set)\n",
    "        sampler = RevlogSampler(self.test_set, batch_size=self.batch_size)\n",
    "        self.test_data_loader = DataLoader(self.test_set, batch_sampler=sampler, collate_fn=collate_fn)\n",
    "        print(\"dataset built\")\n",
    "\n",
    "    def train(self):\n",
    "        # pretrain\n",
    "\n",
    "        epoch_len = len(self.train_data_loader)\n",
    "        pbar = notebook.tqdm(desc=\"train\", colour=\"red\", total=epoch_len*self.n_epoch)\n",
    "        print_len = max(self.batch_nums*self.n_epoch // 5, 1)\n",
    "        for k in range(self.n_epoch):\n",
    "            weighted_loss = self.eval()\n",
    "            for i, batch in enumerate(self.train_data_loader):\n",
    "                self.model.train()\n",
    "                self.optimizer.zero_grad()\n",
    "                sequences, delta_ts, labels, seq_lens = batch\n",
    "                real_batch_size = seq_lens.shape[0]\n",
    "                outputs, _ = self.model(sequences)\n",
    "                stabilities = outputs[seq_lens-1, torch.arange(real_batch_size), 0]\n",
    "                retentions = torch.exp(np.log(0.9) * delta_ts / stabilities)\n",
    "                loss = self.loss_fn(retentions, labels)\n",
    "                loss.backward()\n",
    "                self.optimizer.step()\n",
    "                self.scheduler.step()\n",
    "                pbar.update(real_batch_size)\n",
    "\n",
    "                if (k * self.batch_nums + i + 1) % print_len == 0:\n",
    "                    print(f\"iteration: {k * epoch_len + (i + 1) * self.batch_size}\")\n",
    "                    for name, param in self.model.named_parameters():\n",
    "                        print(name, param)\n",
    "        pbar.close()\n",
    "\n",
    "        weighted_loss = self.eval()\n",
    "\n",
    "        return self.model.state_dict()\n",
    "\n",
    "    def eval(self):\n",
    "        self.model.eval()\n",
    "        with torch.no_grad():\n",
    "            sequences, delta_ts, labels, seq_lens = self.train_set.x_train, self.train_set.t_train, self.train_set.y_train, self.train_set.seq_len\n",
    "            real_batch_size = seq_lens.shape[0]\n",
    "            outputs, _ = self.model(sequences.transpose(0, 1))\n",
    "            stabilities = outputs[seq_lens-1, torch.arange(real_batch_size), 0]\n",
    "            retentions = torch.exp(np.log(0.9) * delta_ts / stabilities)\n",
    "            tran_loss = self.loss_fn(retentions, labels)/len(self.train_set)\n",
    "            self.avg_train_losses.append(tran_loss)\n",
    "            print(f\"Loss in trainset: {tran_loss:.4f}\")\n",
    "            \n",
    "            sequences, delta_ts, labels, seq_lens = self.test_set.x_train, self.test_set.t_train, self.test_set.y_train, self.test_set.seq_len\n",
    "            real_batch_size = seq_lens.shape[0]\n",
    "            outputs, _ = self.model(sequences.transpose(0, 1))\n",
    "            stabilities = outputs[seq_lens-1, torch.arange(real_batch_size), 0]\n",
    "            retentions = torch.exp(np.log(0.9) * delta_ts / stabilities)\n",
    "            test_loss = self.loss_fn(retentions, labels)/len(self.test_set)\n",
    "            self.avg_eval_losses.append(test_loss)\n",
    "            print(f\"Loss in testset: {test_loss:.4f}\")\n",
    "\n",
    "            weighted_loss = (tran_loss * len(self.train_set) + test_loss * len(self.test_set)) / (len(self.train_set) + len(self.test_set))\n",
    "\n",
    "            return weighted_loss\n",
    "\n",
    "    def plot(self):\n",
    "        plt.plot(self.avg_train_losses, label='train')\n",
    "        plt.plot(self.avg_eval_losses, label='test')\n",
    "        plt.xlabel('epoch')\n",
    "        plt.ylabel('loss')\n",
    "        plt.legend()\n",
    "        plt.show()"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.2 Train the model\n",
    "\n",
    "The [./revlog_history.tsv](./revlog_history.tsv) generated before will be used for training the FSRS model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "718000e79ad540c1baa49f30b21aeda1",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/224893 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Tensorized!\n",
      "dataset built\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b62d1fe4d89344f1a461b2590e243bb2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "train:   0%|          | 0/1124465 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss in trainset: 2.4119\n",
      "Loss in testset: 2.4119\n",
      "iteration: 196096\n",
      "rnn.weight_ih_l0 Parameter containing:\n",
      "tensor([[ 0.3835, -0.2943, -0.2029,  0.3981,  0.4506],\n",
      "        [-0.2671, -0.8710, -0.8299, -0.0112, -0.1049],\n",
      "        [ 0.7914, -0.9069, -0.6054,  0.4857,  0.8467],\n",
      "        [-0.5266, -0.6663, -1.3551, -0.5421,  0.1547],\n",
      "        [-0.9116,  0.9563, -0.3825, -0.3833, -0.6849],\n",
      "        [ 0.3049, -0.7808,  0.1653,  0.3837,  0.0754],\n",
      "        [-0.5911,  1.4435,  0.3035, -0.6890, -2.7356],\n",
      "        [ 0.2756, -0.9323, -0.1694,  0.1936,  0.8724],\n",
      "        [-0.1218, -0.5688,  0.9165,  0.8830,  1.7901],\n",
      "        [-0.3743, -0.5341, -0.5827, -0.2977, -0.5517],\n",
      "        [-0.5387, -0.8700, -1.5836, -0.3909,  0.3284],\n",
      "        [-0.6199, -0.3299, -1.9298, -0.5784, -0.5187],\n",
      "        [ 0.3208, -1.1131, -0.3465,  0.2171,  0.7544],\n",
      "        [-0.3137, -0.2567, -0.1164, -0.4874, -1.1574],\n",
      "        [ 0.7390,  1.3855,  1.2445,  0.0445, -1.9668],\n",
      "        [ 0.2527, -0.7011,  0.2999,  0.4020,  0.3468],\n",
      "        [ 0.2315, -1.0041,  0.3926,  0.5651,  0.2340],\n",
      "        [-0.3407, -0.6807, -0.8983, -0.4757,  0.0354],\n",
      "        [ 0.5993, -1.1672,  1.3134,  0.9696,  0.2704],\n",
      "        [-0.4762, -0.5464, -0.7351, -0.4869, -0.4553],\n",
      "        [ 0.3955,  2.2780,  0.5568,  0.7527, -2.0360],\n",
      "        [ 0.2171, -1.0462,  0.0416,  0.0968,  0.1169],\n",
      "        [ 0.6008,  1.3203,  0.5520,  0.9267,  0.2050],\n",
      "        [ 0.4957, -2.6279,  1.0081,  0.7629,  0.4783],\n",
      "        [ 0.9225, -1.8924,  1.1951,  0.8789,  0.8487],\n",
      "        [-0.3755, -0.5023, -0.4337, -0.0198, -0.3227],\n",
      "        [ 0.1173, -1.1671, -0.8890,  0.0242,  0.0328],\n",
      "        [-0.4051, -0.2187, -1.5443, -0.0893, -0.5651],\n",
      "        [ 0.7158, -0.9581,  0.5831,  0.7562,  0.1208],\n",
      "        [-0.1942, -0.1414, -0.1111, -0.0237, -0.4607],\n",
      "        [-0.9803, -0.0444,  0.5937, -0.3073,  1.1589],\n",
      "        [ 0.3115, -0.2614,  0.1307,  0.5784, -0.2386],\n",
      "        [ 0.7183, -0.2785,  0.4696,  0.5161,  0.6233],\n",
      "        [ 0.3103, -0.3378,  0.3855,  0.5971,  0.3303],\n",
      "        [-0.6765,  0.4671, -0.2427, -0.7659, -0.7799],\n",
      "        [ 0.1409, -0.4498, -0.4291,  0.7045,  0.2508],\n",
      "        [ 0.4290,  1.1934,  1.8622,  0.2808, -2.0186],\n",
      "        [ 0.5241, -0.2182,  0.2053,  0.4145,  0.6807],\n",
      "        [-0.2737, -1.1229, -1.2124, -0.4390,  1.0225],\n",
      "        [-0.5956,  0.1608, -0.3413, -0.4802, -0.5262],\n",
      "        [-0.7037, -0.0788, -0.1683, -0.0753, -0.8764],\n",
      "        [ 0.2271, -0.2326, -0.2568,  0.2685,  0.4554],\n",
      "        [-0.1406,  0.3435, -0.3979, -0.4903, -0.6900],\n",
      "        [-0.0707, -0.0270, -0.2123, -0.2119, -0.2031],\n",
      "        [-0.6431,  0.6088, -0.7376, -0.7296, -0.8885],\n",
      "        [-0.1144, -0.1629, -0.5459, -0.4465, -0.2355],\n",
      "        [-0.3285,  3.0293,  0.4118, -0.5371, -0.5520],\n",
      "        [ 0.4837, -0.0904,  0.3547,  0.3410,  0.3702],\n",
      "        [-0.2750, -2.8563, -2.1705,  0.5644,  0.7171],\n",
      "        [-0.5143, -1.0119, -0.8334, -0.4707,  0.2428],\n",
      "        [ 0.3010, -1.6334, -0.6974,  0.4130,  0.4464],\n",
      "        [-0.6377, -0.7105, -1.3666, -0.2754,  0.2471],\n",
      "        [ 0.4231,  1.5229,  1.1711, -0.1224, -0.5968],\n",
      "        [ 0.2133, -5.2044, -2.4361,  0.6994,  1.6240],\n",
      "        [ 0.2282,  1.8450,  1.4554,  0.0333, -0.7258],\n",
      "        [ 0.3445, -4.2358, -0.0354,  0.9124,  0.4348],\n",
      "        [ 0.2517, -2.8995, -1.2500,  0.8465,  0.6091],\n",
      "        [-0.3366, -0.9530, -0.3613, -0.1931, -0.5757],\n",
      "        [-0.2121, -0.7633, -1.3941, -0.6869,  0.3569],\n",
      "        [-0.5173, -0.1143, -1.2345, -0.6023, -0.6033],\n",
      "        [ 0.0873, -5.9436, -2.5142,  0.8379,  1.0388],\n",
      "        [-0.1362, -0.2756,  0.7790, -0.6424, -0.9022],\n",
      "        [ 0.4798,  0.8989,  1.0014,  0.3273, -0.2874],\n",
      "        [ 0.1196, -6.1236, -2.2388,  0.7472,  2.2375]], requires_grad=True)\n",
      "rnn.weight_hh_l0 Parameter containing:\n",
      "tensor([[-0.0077,  0.1003,  0.1847,  ..., -0.4466,  0.3200, -0.2837],\n",
      "        [-0.8400, -0.2543,  0.6610,  ...,  0.0489, -0.0908, -0.4087],\n",
      "        [ 0.4331,  0.0805, -0.7076,  ...,  0.1356, -0.7638, -0.7829],\n",
      "        ...,\n",
      "        [-0.4085, -0.2663,  0.3151,  ..., -0.1540,  0.2903,  0.3790],\n",
      "        [ 0.5968,  0.6671, -0.2666,  ..., -0.8815,  1.1979,  0.9426],\n",
      "        [-0.9274, -0.2862,  0.4039,  ..., -0.0597,  0.6380, -1.4181]],\n",
      "       requires_grad=True)\n",
      "rnn.bias_ih_l0 Parameter containing:\n",
      "tensor([ 0.1528, -0.6040, -0.0580, -0.6168, -0.5390,  0.2794, -0.2781, -0.0054,\n",
      "         0.9163, -0.5274, -0.5060, -0.9992,  0.1221, -0.2363,  0.5930,  0.1643,\n",
      "         0.3204, -0.4579,  0.3849, -0.5704,  1.0032,  0.0423,  1.0043,  0.2089,\n",
      "         0.8925, -0.0388, -0.2655, -0.1365,  0.6081, -0.5032,  0.0595,  0.4192,\n",
      "         0.7660,  0.5150, -0.2752,  0.5520,  0.4781,  0.2254, -0.3232, -0.7845,\n",
      "        -0.3385,  0.2953, -0.5640, -0.2069, -0.5396, -0.4955, -0.0593,  0.7026,\n",
      "        -0.1643, -0.6722,  0.4356, -0.6402,  0.9100, -0.5924,  0.4082, -0.1531,\n",
      "         0.0015, -0.7500, -0.6526, -0.6936, -0.3370, -0.7950,  0.7055, -0.6266],\n",
      "       requires_grad=True)\n",
      "rnn.bias_hh_l0 Parameter containing:\n",
      "tensor([-0.0050, -0.4515,  0.0195, -0.6303, -0.3086,  0.1935, -0.3586,  0.0930,\n",
      "         0.6694, -0.5240, -0.6991, -0.8802,  0.3390, -0.2258,  0.5498,  0.0512,\n",
      "         0.5965, -0.6846,  0.5889, -0.7154,  0.7850,  0.1691,  1.3953,  0.5316,\n",
      "         0.7518, -0.0167, -0.5074, -0.3300,  0.8516, -0.0947, -0.2267,  0.4196,\n",
      "         0.3786,  0.5053, -0.5190,  0.1902,  0.0587,  0.3089, -0.4156, -0.4571,\n",
      "        -0.7799,  0.2119, -0.3384, -0.4924, -0.3479, -0.0447,  0.0756,  0.4911,\n",
      "        -0.3007, -0.5047,  0.4850, -0.8045,  0.6777, -0.5304,  0.5878, -0.0267,\n",
      "        -0.0247, -0.6461, -0.3338, -0.7482,  0.0079, -0.4688,  0.7821, -0.5446],\n",
      "       requires_grad=True)\n",
      "fc.weight Parameter containing:\n",
      "tensor([[ 0.4577,  0.0733, -0.8059,  0.0673, -0.5618,  0.6852,  0.1758, -0.6744,\n",
      "         -0.5375, -0.0052, -0.2244,  0.0697, -0.6589,  0.0420, -0.5093,  0.8222]],\n",
      "       requires_grad=True)\n",
      "fc.bias Parameter containing:\n",
      "tensor([0.6467], requires_grad=True)\n",
      "Loss in trainset: 0.3166\n",
      "Loss in testset: 0.3166\n",
      "iteration: 420989\n",
      "rnn.weight_ih_l0 Parameter containing:\n",
      "tensor([[ 3.9913e-01, -3.5315e-01, -3.0002e-01,  4.1850e-02,  5.3765e-01],\n",
      "        [-2.6988e-01, -8.6855e-01, -8.1115e-01, -7.5316e-02, -9.8718e-02],\n",
      "        [ 1.0950e+00, -1.1492e+00, -9.8121e-01,  3.9450e-01,  7.5468e-01],\n",
      "        [-5.2466e-01, -6.5665e-01, -1.3412e+00, -5.6345e-01,  1.0512e-01],\n",
      "        [-7.4119e-01,  6.3344e-01, -1.2671e+00,  1.3447e-01, -1.3755e-01],\n",
      "        [ 2.6329e-01, -1.0034e+00, -2.3855e-02,  4.6936e-03,  3.9562e-01],\n",
      "        [-4.8812e-01,  1.5603e+00,  1.1194e+00, -8.1605e-01, -3.3797e+00],\n",
      "        [ 5.1638e-01, -3.8841e-01, -4.0309e-01,  2.5817e-01,  1.1171e+00],\n",
      "        [-2.8920e-01, -5.2031e-01,  1.4713e+00,  7.5471e-01,  3.0034e+00],\n",
      "        [-4.3600e-01, -1.2550e+00, -8.8664e-01, -2.7099e-01, -1.2822e+00],\n",
      "        [-5.4063e-01, -8.8088e-01, -1.6569e+00, -4.7218e-01,  4.2233e-01],\n",
      "        [-6.0040e-01, -2.7900e-01, -1.8714e+00, -6.7718e-01, -4.7293e-01],\n",
      "        [ 5.4356e-01, -1.1739e+00, -8.4462e-01, -1.2746e-02,  8.8909e-01],\n",
      "        [-2.2864e-01, -8.0919e-01,  1.7764e+00, -4.8207e-01, -1.3952e+00],\n",
      "        [ 6.5479e-01,  1.7118e+00,  2.3551e+00, -4.1805e-01, -2.7862e+00],\n",
      "        [ 2.5442e-01, -8.0811e-01,  2.6712e-01,  1.6883e-01,  6.7195e-01],\n",
      "        [ 2.3854e-01, -9.4873e-01,  3.6676e-01,  6.7799e-01,  1.1948e-03],\n",
      "        [-3.4033e-01, -6.5315e-01, -8.6472e-01, -4.6396e-01,  1.8732e-02],\n",
      "        [ 9.2548e-01, -1.4993e+00,  1.0849e+00,  1.4702e+00,  7.1813e-01],\n",
      "        [-4.6861e-01, -5.0419e-01, -6.4858e-01, -4.6060e-01, -3.7262e-01],\n",
      "        [ 4.0048e-01,  2.4670e+00, -1.8592e-01,  1.1225e+00, -2.7501e+00],\n",
      "        [ 1.8128e-01, -1.6736e+00,  9.0246e-02, -1.8856e-01,  4.6676e-02],\n",
      "        [ 6.3032e-01,  1.3078e+00,  2.5349e-01,  1.1341e+00,  4.0717e-01],\n",
      "        [ 8.3537e-01, -3.1752e+00,  1.1558e+00,  1.6247e+00,  6.0098e-01],\n",
      "        [ 1.1639e+00, -1.7598e+00,  1.9641e+00,  9.5264e-01,  3.2797e-01],\n",
      "        [-4.1039e-01, -1.0161e+00, -5.9350e-01,  1.1213e-01, -8.0205e-01],\n",
      "        [ 1.1705e-01, -1.1564e+00, -8.6997e-01,  3.3131e-02,  5.3381e-04],\n",
      "        [-4.0287e-01, -1.3416e-02, -1.3962e+00, -1.2202e-01, -4.4159e-01],\n",
      "        [ 7.2288e-01, -7.8692e-01,  5.1679e-01,  7.6961e-01,  1.6464e-02],\n",
      "        [-2.0309e-01, -4.9842e-01, -6.4946e-01, -1.4638e-02, -5.0694e-01],\n",
      "        [-1.1044e+00, -2.9384e-01,  1.6066e+00, -5.8117e-01,  1.7861e+00],\n",
      "        [ 3.3461e-01, -3.6258e-01,  1.1935e-01,  7.1454e-01, -1.9440e+00],\n",
      "        [ 7.1631e-01, -2.9685e-01,  1.9401e-01,  4.3256e-01,  6.5968e-01],\n",
      "        [ 3.0995e-01, -3.3522e-01,  3.8198e-01,  5.8944e-01,  3.3110e-01],\n",
      "        [-7.1540e-01,  4.5326e-01,  2.9446e-01, -8.0590e-01, -7.4840e-01],\n",
      "        [ 1.3986e-01, -4.2650e-01, -6.5604e-01,  6.9529e-01,  2.3776e-01],\n",
      "        [ 3.4770e-01,  1.1733e+00,  2.0297e+00,  4.6803e-01, -2.2407e+00],\n",
      "        [ 6.8934e-01, -1.9893e-01, -6.1230e-01,  3.4001e-01,  8.3482e-01],\n",
      "        [-2.7060e-01, -1.0735e+00, -1.5129e+00, -5.8288e-01,  1.1672e+00],\n",
      "        [-5.9145e-01, -1.6777e-01, -6.9981e-02, -5.8175e-01, -4.8054e-01],\n",
      "        [-1.2699e+00, -4.3663e-01,  7.1549e-02,  6.6494e-01, -2.4170e+00],\n",
      "        [ 3.6426e-01,  4.1634e-01,  1.7052e-01,  3.4472e-01,  4.5045e-01],\n",
      "        [-1.3997e-01,  3.2720e-01, -3.7007e-01, -4.8026e-01, -7.0780e-01],\n",
      "        [-7.8349e-02, -8.0303e-02, -2.0407e-01, -1.9899e-01, -2.1567e-01],\n",
      "        [-6.9654e-01,  4.1878e-01, -6.6851e-01, -7.0718e-01, -7.4873e-01],\n",
      "        [-1.0301e-01, -1.2789e-01, -1.6703e+00, -4.6639e-01, -2.2167e-01],\n",
      "        [-2.7487e-01,  4.2424e+00,  6.9054e-03, -6.5420e-01, -8.9691e-01],\n",
      "        [ 4.9263e-01,  4.3525e-03,  3.6245e-01,  1.3358e-01,  6.7651e-01],\n",
      "        [-2.7939e-01, -2.9225e+00, -2.1790e+00,  3.2884e-01,  5.4950e-01],\n",
      "        [-5.1510e-01, -1.0078e+00, -8.2622e-01, -5.0207e-01,  2.4560e-01],\n",
      "        [ 2.9868e-01, -9.7725e-01, -1.1497e+00,  2.6328e-02,  4.5535e-01],\n",
      "        [-6.3522e-01, -7.0142e-01, -1.3573e+00, -2.9448e-01,  2.0429e-01],\n",
      "        [ 5.4235e-01,  1.4804e+00,  1.2349e+00,  1.5295e-03, -4.5632e-01],\n",
      "        [ 1.5143e-01, -9.0918e+00, -2.3190e+00,  1.0679e+00,  2.1322e+00],\n",
      "        [ 4.3632e-01,  1.8858e+00,  2.0654e+00,  2.4411e-01, -1.1568e+00],\n",
      "        [-2.6709e-04, -7.1980e+00,  3.2332e-01,  1.3673e+00,  9.3291e-01],\n",
      "        [ 9.0529e-02, -3.4737e+00, -4.7630e-01,  8.1324e-01,  2.8554e-01],\n",
      "        [-4.0395e-01, -2.5403e+00, -5.8452e-01,  7.1824e-02, -1.5575e+00],\n",
      "        [-2.1276e-01, -7.7366e-01, -1.4453e+00, -7.5565e-01,  4.3403e-01],\n",
      "        [-5.1483e-01, -6.2063e-02, -1.2016e+00, -6.5125e-01, -5.5067e-01],\n",
      "        [-7.8161e-02, -7.0195e+00, -2.7435e+00,  7.6916e-01,  1.1351e+00],\n",
      "        [ 5.0849e-02, -7.9176e-01,  3.1095e+00, -4.7977e-01, -1.2256e+00],\n",
      "        [ 3.9174e-01,  1.1163e+00,  1.5892e+00, -6.9732e-01, -1.7800e-01],\n",
      "        [ 1.0890e-01, -9.9590e+00, -2.4398e+00,  9.0605e-01,  1.9208e+00]],\n",
      "       requires_grad=True)\n",
      "rnn.weight_hh_l0 Parameter containing:\n",
      "tensor([[-0.0164,  0.0804,  0.2649,  ..., -0.5421,  0.3346, -0.3355],\n",
      "        [-0.8347, -0.2475,  0.6578,  ...,  0.0450, -0.1527, -0.4031],\n",
      "        [ 0.9285,  0.3344, -0.7379,  ...,  0.3612, -0.8899, -0.3403],\n",
      "        ...,\n",
      "        [-0.3301, -0.0908,  0.1803,  ..., -0.0167, -0.1860,  0.4811],\n",
      "        [ 0.5938,  0.6392,  0.0889,  ..., -0.7763,  1.5322,  0.9710],\n",
      "        [-0.9775, -0.4309,  0.7007,  ...,  1.0914,  0.5003, -1.8484]],\n",
      "       requires_grad=True)\n",
      "rnn.bias_ih_l0 Parameter containing:\n",
      "tensor([-0.0421, -0.6390, -0.3063, -0.6433, -0.4856,  0.1246, -0.1793,  0.1891,\n",
      "         1.2913, -0.8567, -0.5188, -0.9841, -0.0432, -0.0061,  0.5106,  0.1069,\n",
      "         0.3670, -0.4529,  0.5169, -0.5472,  0.8513, -0.2393,  1.1767,  0.4749,\n",
      "         1.0504, -0.0398, -0.2651, -0.0740,  0.6355, -0.5733,  0.1455, -0.1239,\n",
      "         0.7199,  0.5125, -0.2441,  0.5542,  0.5613,  0.2132, -0.4443, -0.9339,\n",
      "        -0.5104,  0.5253, -0.5664, -0.2230, -0.5552, -0.5636,  0.1354,  0.8257,\n",
      "        -0.4015, -0.6936,  0.3017, -0.6640,  0.9536, -0.7334,  0.5909, -0.1029,\n",
      "        -0.0424, -1.0997, -0.6669, -0.6896, -0.5459, -0.4683,  0.7562, -1.1108],\n",
      "       requires_grad=True)\n",
      "rnn.bias_hh_l0 Parameter containing:\n",
      "tensor([-0.1998, -0.4868, -0.2289, -0.6568, -0.2552,  0.0387, -0.2598,  0.2874,\n",
      "         1.0445, -0.8533, -0.7118, -0.8654,  0.1736,  0.0043,  0.4675, -0.0062,\n",
      "         0.6425, -0.6778,  0.7207, -0.6888,  0.6331, -0.1127,  1.5634,  0.7975,\n",
      "         0.9097, -0.0178, -0.5064, -0.2661,  0.8786, -0.1655, -0.1406, -0.1235,\n",
      "         0.3328,  0.5029, -0.4878,  0.1928,  0.1420,  0.2968, -0.5366, -0.6066,\n",
      "        -0.9518,  0.4420, -0.3409, -0.5080, -0.3635, -0.1132,  0.2702,  0.6143,\n",
      "        -0.5378, -0.5262,  0.3511, -0.8280,  0.7214, -0.6714,  0.7704,  0.0234,\n",
      "        -0.0686, -0.9961, -0.3483, -0.7441, -0.2010, -0.1428,  0.8328, -1.0288],\n",
      "       requires_grad=True)\n",
      "fc.weight Parameter containing:\n",
      "tensor([[ 0.4229,  0.0549, -0.8535,  0.0665, -0.7181,  0.8431,  0.1461, -0.8630,\n",
      "         -0.5517, -0.2391, -0.2244,  0.0698, -0.6657,  0.1411, -0.4497,  1.2050]],\n",
      "       requires_grad=True)\n",
      "fc.bias Parameter containing:\n",
      "tensor([0.6823], requires_grad=True)\n",
      "Loss in trainset: 0.3101\n",
      "Loss in testset: 0.3101\n",
      "iteration: 645882\n",
      "rnn.weight_ih_l0 Parameter containing:\n",
      "tensor([[ 3.9170e-01, -4.0083e-01, -3.3555e-01,  8.7079e-02,  4.7138e-01],\n",
      "        [-2.7092e-01, -8.6558e-01, -7.0465e-01, -2.4695e-02, -3.6630e-02],\n",
      "        [ 9.0398e-01, -1.6143e+00, -1.2356e+00,  6.4923e-01,  2.1818e-01],\n",
      "        [-5.2419e-01, -6.5571e-01, -1.3099e+00, -5.1825e-01,  9.1125e-02],\n",
      "        [-5.9745e-01,  6.1089e-01, -1.3321e+00,  1.2680e-01, -4.4655e-01],\n",
      "        [ 1.9761e-01, -1.1218e+00, -4.2502e-01, -2.6184e-01,  5.4921e-01],\n",
      "        [-4.0576e-01,  1.5619e+00,  1.3623e+00, -1.0120e+00, -3.6338e+00],\n",
      "        [ 4.1856e-01, -4.5485e-01, -4.8381e-01,  4.1469e-01,  6.4112e-01],\n",
      "        [-2.9461e-01, -3.7900e-01,  7.2997e-01,  7.6319e-01,  3.4942e+00],\n",
      "        [-4.4040e-01, -1.2279e+00, -8.1469e-01, -2.3071e-01, -1.1979e+00],\n",
      "        [-5.4094e-01, -9.0414e-01, -1.6645e+00, -4.6395e-01,  3.3432e-01],\n",
      "        [-4.8840e-01, -1.8708e-01, -1.8968e+00, -6.9148e-01, -4.1306e-01],\n",
      "        [ 5.5003e-01, -1.1173e+00, -7.7143e-01,  3.2436e-02,  7.5266e-01],\n",
      "        [-3.2665e-01, -1.1305e+00,  2.7681e+00, -8.2575e-01, -1.8281e+00],\n",
      "        [ 7.6984e-01,  1.8237e+00,  2.5652e+00, -4.0135e-01, -3.0327e+00],\n",
      "        [ 2.5613e-01, -8.0323e-01,  2.7409e-01,  1.8239e-01,  5.9988e-01],\n",
      "        [ 2.3902e-01, -9.3830e-01,  2.7605e-01,  7.0399e-01, -1.1392e-01],\n",
      "        [-3.4072e-01, -6.3968e-01, -8.3425e-01, -4.6247e-01,  1.3783e-02],\n",
      "        [ 9.2138e-01, -1.6223e+00,  9.5832e-01,  1.4871e+00,  8.7307e-01],\n",
      "        [-4.6536e-01, -4.7444e-01, -5.8400e-01, -4.4725e-01, -3.2096e-01],\n",
      "        [ 2.1913e-01,  2.4580e+00, -9.1307e-01,  1.1120e+00, -2.5052e+00],\n",
      "        [ 2.5524e-01, -2.2331e+00, -6.9619e-03, -7.2191e-01,  3.3850e-02],\n",
      "        [ 6.3239e-01,  1.2592e+00,  2.4507e-01,  1.1400e+00,  5.0011e-01],\n",
      "        [ 7.1507e-01, -3.4269e+00,  8.1473e-01,  1.6524e+00,  6.2280e-01],\n",
      "        [ 1.2260e+00, -1.5659e+00,  2.1426e+00,  8.9342e-01,  2.1584e-01],\n",
      "        [-4.0958e-01, -9.6343e-01, -5.7297e-01,  1.1022e-01, -6.7988e-01],\n",
      "        [ 1.2119e-01, -1.1455e+00, -8.5485e-01,  3.4219e-02,  1.8363e-02],\n",
      "        [-2.4220e-01,  6.8291e-01, -9.2564e-01, -7.7280e-02, -2.6453e-01],\n",
      "        [ 7.2548e-01, -7.3688e-01,  4.9927e-01,  7.7639e-01, -4.2898e-02],\n",
      "        [-2.2137e-01, -2.7565e-01, -6.4414e-01, -1.6518e-01, -5.8098e-01],\n",
      "        [-1.1699e+00, -4.0741e-01,  1.5444e+00, -4.5103e-01,  1.5367e+00],\n",
      "        [ 4.0255e-01, -3.8260e-01, -1.6529e-02,  9.2425e-01, -2.3091e+00],\n",
      "        [ 7.0952e-01, -3.1849e-01,  1.7445e-01,  4.6170e-01,  6.4375e-01],\n",
      "        [ 3.0944e-01, -3.3111e-01,  4.0418e-01,  5.9418e-01,  3.3944e-01],\n",
      "        [-8.8179e-01,  5.8314e-01,  9.8509e-02, -9.6214e-01, -6.8305e-01],\n",
      "        [ 1.3906e-01, -4.2238e-01, -6.7717e-01,  7.1130e-01,  2.3502e-01],\n",
      "        [ 3.4124e-01,  1.2063e+00,  2.0449e+00,  3.3182e-01, -1.8602e+00],\n",
      "        [ 6.0580e-01, -1.8186e-01, -8.9799e-01,  2.8407e-01,  8.5060e-01],\n",
      "        [-2.7253e-01, -1.0716e+00, -1.5656e+00, -5.2852e-01,  1.0205e+00],\n",
      "        [-6.1586e-01, -2.7583e-01,  2.9456e-02, -6.3562e-01, -3.4169e-01],\n",
      "        [-1.2546e+00, -3.7256e-01,  2.6084e-01,  8.1063e-01, -2.7140e+00],\n",
      "        [ 3.3491e-01,  4.1193e-01,  3.1163e-02,  3.1593e-01,  4.5277e-01],\n",
      "        [-1.3962e-01,  3.4599e-01, -3.5905e-01, -4.8132e-01, -6.8697e-01],\n",
      "        [-9.3584e-02,  4.4354e-02, -1.0347e-01, -1.9094e-01, -2.2411e-01],\n",
      "        [-6.9811e-01,  4.0609e-01, -6.3790e-01, -7.3176e-01, -6.8148e-01],\n",
      "        [-1.0623e-01, -1.9298e-01, -1.9335e+00, -4.6909e-01, -2.8914e-01],\n",
      "        [ 2.4824e-02,  4.7154e+00, -3.6821e-02, -5.4655e-01, -8.7307e-01],\n",
      "        [ 4.9145e-01,  1.3684e-02,  3.7073e-01,  1.4740e-01,  6.6788e-01],\n",
      "        [-2.8536e-01, -2.9579e+00, -2.1938e+00,  2.7880e-01,  3.8507e-01],\n",
      "        [-5.1548e-01, -1.0048e+00, -7.8035e-01, -4.7691e-01,  3.0573e-01],\n",
      "        [ 3.4045e-01, -7.5394e-01, -1.2090e+00, -7.5956e-02,  2.7656e-01],\n",
      "        [-6.3466e-01, -7.0046e-01, -1.3359e+00, -2.5557e-01,  1.9211e-01],\n",
      "        [ 4.8380e-01,  1.5306e+00,  1.2248e+00,  2.1715e-02, -6.7279e-01],\n",
      "        [ 1.7962e-01, -1.0550e+01, -1.6053e+00,  1.1345e+00,  2.2183e+00],\n",
      "        [ 4.3649e-01,  1.8841e+00,  2.0848e+00,  2.7825e-01, -1.0287e+00],\n",
      "        [ 1.0084e-03, -8.1619e+00, -7.7800e-02,  1.3963e+00,  1.0181e+00],\n",
      "        [ 2.3431e-01, -3.1878e+00, -5.3057e-01,  6.4403e-01,  1.8922e-01],\n",
      "        [-4.0680e-01, -2.5216e+00, -4.9325e-01,  9.5478e-02, -1.4945e+00],\n",
      "        [-2.1142e-01, -7.9753e-01, -1.4524e+00, -7.4595e-01,  3.5280e-01],\n",
      "        [-5.1170e-01,  3.8871e-01, -1.5597e+00, -1.0515e+00, -6.3537e-01],\n",
      "        [-8.5242e-02, -7.0133e+00, -2.7675e+00,  6.6422e-01,  8.3836e-01],\n",
      "        [-1.9080e-01, -1.1124e+00,  3.9602e+00, -8.6359e-01, -1.4733e+00],\n",
      "        [ 5.9353e-01,  1.2068e+00,  1.6229e+00, -6.6105e-01, -3.9719e-01],\n",
      "        [ 1.2377e-01, -1.1096e+01, -2.6614e+00,  1.0537e+00,  1.8202e+00]],\n",
      "       requires_grad=True)\n",
      "rnn.weight_hh_l0 Parameter containing:\n",
      "tensor([[-0.0398,  0.0514,  0.3220,  ..., -0.5657,  0.3678, -0.3958],\n",
      "        [-0.8321, -0.2440,  0.6567,  ...,  0.0642, -0.1831, -0.4015],\n",
      "        [ 0.9032,  0.3031, -0.4048,  ...,  0.3407, -0.8571, -0.2792],\n",
      "        ...,\n",
      "        [-0.1914,  0.0488,  0.0753,  ...,  0.1040, -0.6989,  0.2431],\n",
      "        [ 0.5912,  0.6299,  0.2895,  ..., -0.6910,  1.7277,  1.0549],\n",
      "        [-1.0732, -0.5630,  0.7007,  ...,  1.5844,  0.4231, -1.8527]],\n",
      "       requires_grad=True)\n",
      "rnn.bias_ih_l0 Parameter containing:\n",
      "tensor([-0.0647, -0.5513, -0.5443, -0.6224, -0.5620, -0.0331, -0.2581,  0.1724,\n",
      "         1.2355, -0.8002, -0.5672, -0.9180, -0.0470,  0.1062,  0.5545,  0.0853,\n",
      "         0.3541, -0.4543,  0.4766, -0.5356,  0.8432, -0.7252,  1.2031,  0.3014,\n",
      "         1.1848, -0.0387, -0.2620,  0.2961,  0.6423, -0.6890,  0.1384, -0.2021,\n",
      "         0.7142,  0.5262, -0.2089,  0.5600,  0.5601,  0.1695, -0.4557, -0.9485,\n",
      "        -0.4569,  0.4949, -0.5544, -0.1605, -0.5532, -0.6248,  0.3363,  0.8331,\n",
      "        -0.4989, -0.6469,  0.2641, -0.6463,  0.9514, -0.6937,  0.6397, -0.3228,\n",
      "        -0.1235, -1.0555, -0.7117, -0.7284, -0.7237, -0.5641,  0.8610, -1.1855],\n",
      "       requires_grad=True)\n",
      "rnn.bias_hh_l0 Parameter containing:\n",
      "tensor([-0.2224, -0.3993, -0.4669, -0.6359, -0.3316, -0.1190, -0.3386,  0.2707,\n",
      "         0.9887, -0.7967, -0.7601, -0.7995,  0.1697,  0.1167,  0.5114, -0.0277,\n",
      "         0.6290, -0.6777,  0.6804, -0.6745,  0.6251, -0.5987,  1.5862,  0.6239,\n",
      "         1.0442, -0.0168, -0.5029,  0.1052,  0.8851, -0.2817, -0.1477, -0.2017,\n",
      "         0.3274,  0.5165, -0.4526,  0.1989,  0.1409,  0.2531, -0.5481, -0.6212,\n",
      "        -0.8983,  0.4117, -0.3290, -0.4453, -0.3616, -0.1747,  0.4711,  0.6218,\n",
      "        -0.6352, -0.4796,  0.3136, -0.8102,  0.7194, -0.6317,  0.8192, -0.1965,\n",
      "        -0.1497, -0.9520, -0.3933, -0.7828, -0.3788, -0.2389,  0.9376, -1.1035],\n",
      "       requires_grad=True)\n",
      "fc.weight Parameter containing:\n",
      "tensor([[ 0.4057,  0.0220, -0.9175,  0.0464, -0.6574,  0.8908,  0.1119, -1.0081,\n",
      "         -0.5726, -0.2342, -0.1816,  0.2121, -0.6369,  0.2436, -0.5415,  1.3926]],\n",
      "       requires_grad=True)\n",
      "fc.bias Parameter containing:\n",
      "tensor([0.6515], requires_grad=True)\n",
      "Loss in trainset: 0.3079\n",
      "Loss in testset: 0.3079\n",
      "iteration: 870775\n",
      "rnn.weight_ih_l0 Parameter containing:\n",
      "tensor([[ 3.8890e-01, -4.1080e-01, -2.9324e-01,  1.2359e-01,  4.6332e-01],\n",
      "        [-2.7142e-01, -8.8343e-01, -6.5969e-01,  5.4688e-02, -1.0061e-01],\n",
      "        [ 9.4025e-01, -1.5825e+00, -1.0432e+00,  7.5111e-01,  2.6313e-01],\n",
      "        [-5.2410e-01, -6.5321e-01, -1.2974e+00, -5.0726e-01,  5.8899e-02],\n",
      "        [-5.7366e-01,  5.6212e-01, -1.3781e+00,  1.7149e-01, -4.5437e-01],\n",
      "        [ 2.1368e-01, -1.1000e+00, -4.1650e-01, -2.8946e-01,  6.8572e-01],\n",
      "        [-3.4960e-01,  1.5263e+00,  1.4493e+00, -1.0040e+00, -3.6914e+00],\n",
      "        [ 4.3850e-01, -4.7999e-01, -4.3691e-01,  4.6665e-01,  6.1582e-01],\n",
      "        [-2.2511e-01, -3.4168e-01,  5.7251e-01,  8.0549e-01,  3.6446e+00],\n",
      "        [-4.3663e-01, -1.2359e+00, -7.7834e-01, -1.9593e-01, -1.1975e+00],\n",
      "        [-5.4077e-01, -8.9601e-01, -1.6569e+00, -4.6765e-01,  3.1514e-01],\n",
      "        [-4.7571e-01, -5.2386e-02, -1.9251e+00, -7.9506e-01, -3.8308e-01],\n",
      "        [ 5.5668e-01, -1.1262e+00, -6.9675e-01,  4.6034e-02,  7.7000e-01],\n",
      "        [-3.1829e-01, -1.1919e+00,  2.8049e+00, -7.5206e-01, -1.9321e+00],\n",
      "        [ 7.6305e-01,  1.8194e+00,  2.6199e+00, -2.9633e-01, -3.1854e+00],\n",
      "        [ 2.5737e-01, -7.9077e-01,  2.9432e-01,  2.0982e-01,  6.7074e-01],\n",
      "        [ 2.3983e-01, -8.7183e-01,  2.4529e-01,  7.0452e-01, -1.4726e-01],\n",
      "        [-3.4149e-01, -6.4114e-01, -8.2205e-01, -4.6197e-01,  3.3591e-03],\n",
      "        [ 9.1810e-01, -1.6759e+00,  9.7941e-01,  1.5574e+00,  9.7740e-01],\n",
      "        [-4.6485e-01, -4.6424e-01, -5.6016e-01, -4.4320e-01, -3.1003e-01],\n",
      "        [ 1.4531e-01,  2.4557e+00, -1.0042e+00,  1.0865e+00, -2.4166e+00],\n",
      "        [ 2.9856e-01, -2.2021e+00, -5.7694e-02, -7.0928e-01,  1.5155e-01],\n",
      "        [ 6.3082e-01,  1.2372e+00,  2.0747e-01,  1.1390e+00,  5.3762e-01],\n",
      "        [ 6.3036e-01, -3.4253e+00,  4.4334e-01,  1.6117e+00,  4.6119e-01],\n",
      "        [ 1.2470e+00, -1.5207e+00,  2.1789e+00,  8.8732e-01,  1.8312e-01],\n",
      "        [-4.0623e-01, -9.1950e-01, -5.3905e-01,  1.0638e-01, -6.2408e-01],\n",
      "        [ 1.2569e-01, -1.1414e+00, -8.4523e-01,  3.7048e-02,  2.4081e-02],\n",
      "        [-1.7787e-01,  7.5853e-01, -8.8478e-01, -3.6366e-02, -2.6547e-01],\n",
      "        [ 7.2689e-01, -6.9950e-01,  4.8923e-01,  7.7568e-01, -5.8696e-02],\n",
      "        [-2.1479e-01, -2.4498e-01, -5.3631e-01, -1.5350e-01, -5.7321e-01],\n",
      "        [-1.2062e+00, -4.3206e-01,  1.5511e+00, -5.2377e-01,  1.5400e+00],\n",
      "        [ 4.5464e-01, -3.6157e-01, -1.3326e-02,  9.2071e-01, -2.2320e+00],\n",
      "        [ 7.0674e-01, -3.2629e-01,  2.2310e-01,  4.8190e-01,  6.3860e-01],\n",
      "        [ 3.0899e-01, -3.4016e-01,  4.1177e-01,  6.0218e-01,  3.3007e-01],\n",
      "        [-9.2050e-01,  5.8902e-01,  5.2897e-03, -1.0336e+00, -7.0635e-01],\n",
      "        [ 1.3831e-01, -4.1926e-01, -6.7304e-01,  7.1420e-01,  2.2689e-01],\n",
      "        [ 3.2940e-01,  1.1801e+00,  2.0431e+00,  3.6747e-01, -1.7665e+00],\n",
      "        [ 6.4221e-01, -1.7313e-01, -8.9910e-01,  2.5707e-01,  9.4639e-01],\n",
      "        [-2.7229e-01, -1.0529e+00, -1.5676e+00, -5.6209e-01,  1.0057e+00],\n",
      "        [-6.1829e-01, -2.8547e-01,  4.1860e-02, -6.5640e-01, -3.2093e-01],\n",
      "        [-1.2010e+00, -3.8946e-01,  1.9512e-01,  8.2196e-01, -2.6909e+00],\n",
      "        [ 3.1027e-01,  4.1569e-01, -5.1747e-04,  2.8393e-01,  4.4547e-01],\n",
      "        [-1.3944e-01,  3.3232e-01, -3.5709e-01, -4.8080e-01, -6.8162e-01],\n",
      "        [-1.0533e-01,  1.7660e-02, -4.5482e-02, -1.8385e-01, -2.3029e-01],\n",
      "        [-7.0594e-01,  3.9579e-01, -6.5611e-01, -7.5408e-01, -6.7046e-01],\n",
      "        [-1.0755e-01, -1.4593e-01, -1.9166e+00, -5.1176e-01, -2.4840e-01],\n",
      "        [-1.1020e-02,  4.7508e+00, -2.9874e-02, -5.0382e-01, -9.4582e-01],\n",
      "        [ 4.9083e-01,  1.6856e-02,  3.8555e-01,  1.6722e-01,  6.8714e-01],\n",
      "        [-2.7879e-01, -2.9535e+00, -2.1866e+00,  2.9853e-01,  3.8769e-01],\n",
      "        [-5.1574e-01, -1.0205e+00, -7.6031e-01, -4.3423e-01,  2.3986e-01],\n",
      "        [ 3.3662e-01, -8.3568e-01, -1.1076e+00, -8.5688e-02,  3.3737e-01],\n",
      "        [-6.3466e-01, -6.9810e-01, -1.3274e+00, -2.4615e-01,  1.6460e-01],\n",
      "        [ 5.0994e-01,  1.5022e+00,  1.1738e+00,  4.6435e-02, -5.5536e-01],\n",
      "        [ 1.5038e-01, -1.0629e+01, -1.7001e+00,  1.1576e+00,  2.2762e+00],\n",
      "        [ 4.3747e-01,  1.8733e+00,  2.0725e+00,  3.1038e-01, -9.9788e-01],\n",
      "        [ 6.1963e-03, -8.2366e+00, -1.4492e-01,  1.3135e+00,  1.1321e+00],\n",
      "        [ 2.1523e-01, -3.1043e+00, -4.8848e-01,  5.3637e-01,  2.4295e-01],\n",
      "        [-4.0311e-01, -2.5238e+00, -4.4240e-01,  1.1652e-01, -1.4987e+00],\n",
      "        [-2.1005e-01, -7.8929e-01, -1.4468e+00, -7.4712e-01,  3.3337e-01],\n",
      "        [-5.2006e-01,  7.0092e-01, -1.8009e+00, -1.2548e+00, -6.6277e-01],\n",
      "        [-8.0684e-02, -7.0105e+00, -2.7625e+00,  6.7758e-01,  8.9336e-01],\n",
      "        [-1.8846e-02, -1.1667e+00,  4.1038e+00, -7.0851e-01, -1.6071e+00],\n",
      "        [ 5.4096e-01,  1.1825e+00,  1.6258e+00, -6.6199e-01, -2.3235e-01],\n",
      "        [ 8.2133e-02, -1.1537e+01, -2.5931e+00,  1.1527e+00,  1.8571e+00]],\n",
      "       requires_grad=True)\n",
      "rnn.weight_hh_l0 Parameter containing:\n",
      "tensor([[-0.0472,  0.0396,  0.3367,  ..., -0.5942,  0.3403, -0.4116],\n",
      "        [-0.8313, -0.2432,  0.6506,  ...,  0.0686, -0.1848, -0.4011],\n",
      "        [ 0.8245,  0.2703, -0.3678,  ...,  0.2211, -0.7925, -0.2838],\n",
      "        ...,\n",
      "        [-0.0704,  0.1235, -0.1588,  ..., -0.0540, -0.8373,  0.4011],\n",
      "        [ 0.5903,  0.6423,  0.3071,  ..., -0.5075,  1.8156,  1.0762],\n",
      "        [-1.0473, -0.4441,  0.7057,  ...,  1.7370,  0.4102, -1.7867]],\n",
      "       requires_grad=True)\n",
      "rnn.bias_ih_l0 Parameter containing:\n",
      "tensor([-0.0457, -0.5499, -0.4295, -0.6268, -0.5762,  0.0019, -0.2569,  0.1942,\n",
      "         1.2591, -0.7696, -0.5736, -0.8216, -0.0275,  0.1369,  0.5343,  0.1405,\n",
      "         0.3569, -0.4577,  0.4571, -0.5334,  0.8498, -0.6900,  1.2070,  0.2259,\n",
      "         1.2183, -0.0337, -0.2589,  0.3593,  0.6475, -0.6637,  0.0888, -0.1521,\n",
      "         0.7199,  0.5191, -0.2461,  0.5565,  0.5891,  0.1907, -0.4671, -0.9552,\n",
      "        -0.4616,  0.4682, -0.5572, -0.2005, -0.5702, -0.6260,  0.3688,  0.8592,\n",
      "        -0.4831, -0.6408,  0.2744, -0.6505,  0.9703, -0.6959,  0.6608, -0.3845,\n",
      "        -0.1334, -1.0315, -0.7174, -0.6036, -0.6955, -0.4530,  0.8525, -1.1188],\n",
      "       requires_grad=True)\n",
      "rnn.bias_hh_l0 Parameter containing:\n",
      "tensor([-0.2034, -0.3980, -0.3521, -0.6403, -0.3458, -0.0840, -0.3374,  0.2925,\n",
      "         1.0123, -0.7662, -0.7664, -0.7031,  0.1892,  0.1473,  0.4912,  0.0275,\n",
      "         0.6316, -0.6805,  0.6608, -0.6713,  0.6317, -0.5635,  1.5888,  0.5484,\n",
      "         1.0777, -0.0119, -0.4995,  0.1687,  0.8902, -0.2566, -0.1973, -0.1517,\n",
      "         0.3331,  0.5094, -0.4898,  0.1955,  0.1699,  0.2743, -0.5594, -0.6280,\n",
      "        -0.9030,  0.3850, -0.3318, -0.4852, -0.3785, -0.1760,  0.5036,  0.6480,\n",
      "        -0.6194, -0.4736,  0.3239, -0.8144,  0.7383, -0.6339,  0.8402, -0.2582,\n",
      "        -0.1596, -0.9282, -0.3990, -0.6580, -0.3507, -0.1278,  0.9290, -1.0367],\n",
      "       requires_grad=True)\n",
      "fc.weight Parameter containing:\n",
      "tensor([[ 0.4096,  0.0567, -0.9036,  0.0706, -0.6463,  0.8917,  0.1003, -1.0228,\n",
      "         -0.5438, -0.2371, -0.2027,  0.3874, -0.6428,  0.2120, -0.5714,  1.4203]],\n",
      "       requires_grad=True)\n",
      "fc.bias Parameter containing:\n",
      "tensor([0.6626], requires_grad=True)\n",
      "Loss in trainset: 0.3070\n",
      "Loss in testset: 0.3070\n",
      "iteration: 1095668\n",
      "rnn.weight_ih_l0 Parameter containing:\n",
      "tensor([[ 3.8772e-01, -4.1140e-01, -2.9262e-01,  1.2485e-01,  4.6613e-01],\n",
      "        [-2.7148e-01, -8.7096e-01, -6.5743e-01,  6.6643e-02, -9.5697e-02],\n",
      "        [ 9.2652e-01, -1.5794e+00, -1.0552e+00,  7.4661e-01,  2.6860e-01],\n",
      "        [-5.2410e-01, -6.4988e-01, -1.2959e+00, -5.0234e-01,  5.9801e-02],\n",
      "        [-5.7370e-01,  5.5057e-01, -1.3820e+00,  1.7070e-01, -4.5755e-01],\n",
      "        [ 2.0146e-01, -1.0967e+00, -4.3848e-01, -2.8608e-01,  6.8660e-01],\n",
      "        [-3.4199e-01,  1.5319e+00,  1.4558e+00, -1.0055e+00, -3.7014e+00],\n",
      "        [ 4.3193e-01, -4.8422e-01, -4.3461e-01,  4.7050e-01,  6.1190e-01],\n",
      "        [-2.2959e-01, -3.5031e-01,  5.6174e-01,  8.0617e-01,  3.6627e+00],\n",
      "        [-4.3605e-01, -1.2389e+00, -7.7188e-01, -1.9265e-01, -1.1960e+00],\n",
      "        [-5.4075e-01, -8.9012e-01, -1.6561e+00, -4.6632e-01,  3.1832e-01],\n",
      "        [-4.6582e-01, -5.0275e-02, -1.9207e+00, -7.8074e-01, -3.7783e-01],\n",
      "        [ 5.5563e-01, -1.1318e+00, -6.9091e-01,  4.6343e-02,  7.7306e-01],\n",
      "        [-3.0401e-01, -1.2111e+00,  2.8281e+00, -7.3847e-01, -1.9386e+00],\n",
      "        [ 7.5953e-01,  1.8175e+00,  2.6184e+00, -2.9264e-01, -3.2027e+00],\n",
      "        [ 2.5740e-01, -7.9811e-01,  2.9569e-01,  2.1050e-01,  6.7819e-01],\n",
      "        [ 2.3975e-01, -8.6949e-01,  2.4241e-01,  7.0240e-01, -1.5133e-01],\n",
      "        [-3.4154e-01, -6.4044e-01, -8.1995e-01, -4.6239e-01,  3.3357e-03],\n",
      "        [ 9.1107e-01, -1.6873e+00,  9.7605e-01,  1.5556e+00,  9.8476e-01],\n",
      "        [-4.6480e-01, -4.6299e-01, -5.5744e-01, -4.4302e-01, -3.0822e-01],\n",
      "        [ 1.3553e-01,  2.4531e+00, -1.0268e+00,  1.0764e+00, -2.3943e+00],\n",
      "        [ 3.1403e-01, -2.2015e+00, -4.0185e-02, -6.8394e-01,  1.5672e-01],\n",
      "        [ 6.3141e-01,  1.2366e+00,  2.0945e-01,  1.1399e+00,  5.4110e-01],\n",
      "        [ 6.2597e-01, -3.4180e+00,  4.2784e-01,  1.6042e+00,  4.6012e-01],\n",
      "        [ 1.2440e+00, -1.5241e+00,  2.1810e+00,  8.8179e-01,  1.7471e-01],\n",
      "        [-4.0537e-01, -9.2046e-01, -5.3141e-01,  1.0806e-01, -6.1698e-01],\n",
      "        [ 1.2596e-01, -1.1411e+00, -8.4460e-01,  3.7300e-02,  2.4165e-02],\n",
      "        [-1.6162e-01,  7.6706e-01, -8.6427e-01, -2.7125e-02, -2.7197e-01],\n",
      "        [ 7.2659e-01, -6.9972e-01,  4.8906e-01,  7.7500e-01, -6.0941e-02],\n",
      "        [-2.1308e-01, -2.4358e-01, -5.0783e-01, -1.5109e-01, -5.7455e-01],\n",
      "        [-1.1962e+00, -4.2390e-01,  1.5653e+00, -4.9884e-01,  1.5425e+00],\n",
      "        [ 4.5657e-01, -3.5503e-01, -1.2612e-02,  9.1452e-01, -2.2291e+00],\n",
      "        [ 7.0281e-01, -3.2698e-01,  2.2379e-01,  4.7998e-01,  6.3948e-01],\n",
      "        [ 3.0899e-01, -3.3329e-01,  4.1209e-01,  6.0360e-01,  3.3084e-01],\n",
      "        [-9.2081e-01,  5.8420e-01,  1.4645e-03, -1.0320e+00, -7.0954e-01],\n",
      "        [ 1.3824e-01, -4.1478e-01, -6.7287e-01,  7.1587e-01,  2.2715e-01],\n",
      "        [ 3.2268e-01,  1.1723e+00,  2.0428e+00,  3.6425e-01, -1.7577e+00],\n",
      "        [ 6.4982e-01, -1.7103e-01, -8.9722e-01,  2.5824e-01,  9.5279e-01],\n",
      "        [-2.7223e-01, -1.0555e+00, -1.5681e+00, -5.6205e-01,  1.0055e+00],\n",
      "        [-6.1727e-01, -2.8355e-01,  4.3227e-02, -6.5415e-01, -3.1922e-01],\n",
      "        [-1.1881e+00, -3.7756e-01,  2.0562e-01,  8.3841e-01, -2.6936e+00],\n",
      "        [ 3.0480e-01,  4.1401e-01, -8.6501e-04,  2.7588e-01,  4.4552e-01],\n",
      "        [-1.3942e-01,  3.2349e-01, -3.5683e-01, -4.8092e-01, -6.8229e-01],\n",
      "        [-1.0716e-01,  2.9133e-02, -3.9892e-02, -1.8373e-01, -2.2910e-01],\n",
      "        [-7.0496e-01,  3.9933e-01, -6.5626e-01, -7.5029e-01, -6.7129e-01],\n",
      "        [-1.0891e-01, -1.2802e-01, -1.9339e+00, -5.1818e-01, -2.4795e-01],\n",
      "        [-5.5670e-03,  4.7514e+00, -2.0940e-02, -4.9766e-01, -9.6170e-01],\n",
      "        [ 4.9063e-01,  1.4663e-02,  3.8648e-01,  1.6817e-01,  6.8973e-01],\n",
      "        [-2.7835e-01, -2.9487e+00, -2.1874e+00,  3.0000e-01,  3.9019e-01],\n",
      "        [-5.1578e-01, -1.0092e+00, -7.5915e-01, -4.2725e-01,  2.4474e-01],\n",
      "        [ 3.3418e-01, -8.3987e-01, -1.1192e+00, -8.2638e-02,  3.3796e-01],\n",
      "        [-6.3468e-01, -6.9503e-01, -1.3264e+00, -2.4187e-01,  1.6539e-01],\n",
      "        [ 5.1004e-01,  1.4894e+00,  1.1748e+00,  4.7107e-02, -5.4808e-01],\n",
      "        [ 1.5103e-01, -1.0610e+01, -1.7045e+00,  1.1547e+00,  2.2805e+00],\n",
      "        [ 4.3806e-01,  1.8711e+00,  2.0707e+00,  3.1338e-01, -9.9129e-01],\n",
      "        [-9.1218e-03, -8.2370e+00, -1.5348e-01,  1.3052e+00,  1.1347e+00],\n",
      "        [ 2.2522e-01, -3.0775e+00, -4.8085e-01,  5.5090e-01,  2.4631e-01],\n",
      "        [-4.0238e-01, -2.5264e+00, -4.3743e-01,  1.1952e-01, -1.4988e+00],\n",
      "        [-2.0996e-01, -7.8330e-01, -1.4464e+00, -7.4574e-01,  3.3614e-01],\n",
      "        [-5.0847e-01,  7.1659e-01, -1.7886e+00, -1.2563e+00, -6.6640e-01],\n",
      "        [-8.0835e-02, -7.0101e+00, -2.7632e+00,  6.7907e-01,  8.9580e-01],\n",
      "        [-1.6135e-03, -1.1862e+00,  4.1290e+00, -6.9072e-01, -1.6184e+00],\n",
      "        [ 5.4274e-01,  1.1737e+00,  1.6234e+00, -6.5248e-01, -2.2930e-01],\n",
      "        [ 7.0426e-02, -1.1559e+01, -2.5791e+00,  1.1436e+00,  1.8607e+00]],\n",
      "       requires_grad=True)\n",
      "rnn.weight_hh_l0 Parameter containing:\n",
      "tensor([[-0.0481,  0.0373,  0.3386,  ..., -0.5938,  0.3271, -0.4138],\n",
      "        [-0.8312, -0.2431,  0.6498,  ...,  0.0692, -0.1837, -0.4011],\n",
      "        [ 0.8141,  0.2547, -0.3567,  ...,  0.2019, -0.8002, -0.2920],\n",
      "        ...,\n",
      "        [-0.0577,  0.1398, -0.1785,  ..., -0.0789, -0.8275,  0.4118],\n",
      "        [ 0.5913,  0.6456,  0.3012,  ..., -0.4996,  1.8125,  1.0820],\n",
      "        [-1.0475, -0.4448,  0.7154,  ...,  1.7509,  0.4111, -1.7703]],\n",
      "       requires_grad=True)\n",
      "rnn.bias_ih_l0 Parameter containing:\n",
      "tensor([-0.0437, -0.5334, -0.4313, -0.6221, -0.5856,  0.0034, -0.2538,  0.1944,\n",
      "         1.2541, -0.7664, -0.5683, -0.8170, -0.0266,  0.1526,  0.5268,  0.1439,\n",
      "         0.3547, -0.4579,  0.4472, -0.5332,  0.8480, -0.6653,  1.2092,  0.2256,\n",
      "         1.2134, -0.0316, -0.2587,  0.3723,  0.6467, -0.6575,  0.1098, -0.1518,\n",
      "         0.7189,  0.5244, -0.2503,  0.5616,  0.5849,  0.1945, -0.4687, -0.9525,\n",
      "        -0.4463,  0.4615, -0.5608, -0.1892, -0.5667, -0.6219,  0.3764,  0.8605,\n",
      "        -0.4804, -0.6303,  0.2711, -0.6463,  0.9618, -0.6961,  0.6627, -0.3934,\n",
      "        -0.1112, -1.0289, -0.7124, -0.5893, -0.6935, -0.4416,  0.8481, -1.1239],\n",
      "       requires_grad=True)\n",
      "rnn.bias_hh_l0 Parameter containing:\n",
      "tensor([-0.2013, -0.3815, -0.3539, -0.6356, -0.3551, -0.0824, -0.3343,  0.2927,\n",
      "         1.0073, -0.7629, -0.7611, -0.6986,  0.1901,  0.1630,  0.4837,  0.0309,\n",
      "         0.6294, -0.6806,  0.6509, -0.6710,  0.6299, -0.5388,  1.5908,  0.5481,\n",
      "         1.0729, -0.0097, -0.4993,  0.1817,  0.8894, -0.2504, -0.1763, -0.1514,\n",
      "         0.3321,  0.5147, -0.4940,  0.2006,  0.1657,  0.2780, -0.5611, -0.6253,\n",
      "        -0.8876,  0.3784, -0.3354, -0.4738, -0.3750, -0.1719,  0.5112,  0.6493,\n",
      "        -0.6167, -0.4632,  0.3205, -0.8102,  0.7299, -0.6341,  0.8421, -0.2671,\n",
      "        -0.1374, -0.9255, -0.3940, -0.6437, -0.3486, -0.1165,  0.9246, -1.0419],\n",
      "       requires_grad=True)\n",
      "fc.weight Parameter containing:\n",
      "tensor([[ 0.4101,  0.0628, -0.9039,  0.0750, -0.6465,  0.8893,  0.0963, -1.0263,\n",
      "         -0.5513, -0.2358, -0.2064,  0.3947, -0.6432,  0.2178, -0.5654,  1.4244]],\n",
      "       requires_grad=True)\n",
      "fc.bias Parameter containing:\n",
      "tensor([0.6691], requires_grad=True)\n",
      "Loss in trainset: 0.3069\n",
      "Loss in testset: 0.3069\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Training finished!\n"
     ]
    }
   ],
   "source": [
    "dataset = pd.read_csv(\"./revlog_history.tsv\", sep='\\t', index_col=None, dtype={'r_history': str ,'t_history': str} )\n",
    "dataset = dataset[(dataset['i'] > 1) & (dataset['delta_t'] > 0) & (dataset['t_history'].str.count(',0') == 0)]\n",
    "dataset['tensor'] = dataset.progress_apply(lambda x: lineToTensor(list(zip([x['t_history']], [x['r_history']]))[0]), axis=1)\n",
    "dataset['y'] = dataset['r'].map({1: 0, 2: 1, 3: 1, 4: 1})\n",
    "dataset['group'] = dataset['r_history'] + dataset['t_history']\n",
    "print(\"Tensorized!\")\n",
    "\n",
    "w = []\n",
    "\n",
    "network = 'LSTM'\n",
    "optimizer = Optimizer(dataset, dataset, n_epoch=5, lr=4e-2, wd=1e-5, batch_size=512, network=network)\n",
    "w.append(optimizer.train())\n",
    "optimizer.plot()\n",
    "\n",
    "print(\"\\nTraining finished!\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.3 Result\n",
    "\n",
    "Copy the optimal parameters for FSRS for you in the output of next code cell after running."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total parameters: 1489\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "OrderedDict([('rnn.weight_ih_l0',\n",
       "              tensor([[ 3.8644e-01, -4.0817e-01, -2.8845e-01,  1.4383e-01,  4.6561e-01],\n",
       "                      [-2.7136e-01, -8.5903e-01, -6.5171e-01,  8.1768e-02, -8.7924e-02],\n",
       "                      [ 9.0838e-01, -1.5789e+00, -1.0598e+00,  7.5219e-01,  2.5645e-01],\n",
       "                      [-5.2413e-01, -6.4587e-01, -1.2950e+00, -4.9911e-01,  5.9534e-02],\n",
       "                      [-5.6135e-01,  5.3945e-01, -1.3740e+00,  1.7207e-01, -4.5119e-01],\n",
       "                      [ 1.8905e-01, -1.1006e+00, -4.3774e-01, -2.8771e-01,  6.7910e-01],\n",
       "                      [-3.3652e-01,  1.5348e+00,  1.4614e+00, -1.0018e+00, -3.7049e+00],\n",
       "                      [ 4.3334e-01, -4.8748e-01, -4.3762e-01,  4.8368e-01,  5.8632e-01],\n",
       "                      [-2.1811e-01, -3.4100e-01,  5.5242e-01,  8.2498e-01,  3.6519e+00],\n",
       "                      [-4.3614e-01, -1.2416e+00, -7.6624e-01, -2.0713e-01, -1.1917e+00],\n",
       "                      [-5.4072e-01, -8.8342e-01, -1.6548e+00, -4.6101e-01,  3.1959e-01],\n",
       "                      [-4.6611e-01, -6.6253e-02, -1.9242e+00, -7.7660e-01, -3.5642e-01],\n",
       "                      [ 5.5321e-01, -1.1375e+00, -6.8710e-01,  6.2203e-02,  7.6867e-01],\n",
       "                      [-3.1078e-01, -1.2295e+00,  2.8186e+00, -7.3719e-01, -1.9321e+00],\n",
       "                      [ 7.4866e-01,  1.8100e+00,  2.6216e+00, -3.0275e-01, -3.2267e+00],\n",
       "                      [ 2.5722e-01, -8.0109e-01,  2.9632e-01,  2.3024e-01,  6.7264e-01],\n",
       "                      [ 2.3988e-01, -8.6485e-01,  2.4168e-01,  7.0302e-01, -1.5719e-01],\n",
       "                      [-3.4158e-01, -6.3893e-01, -8.1919e-01, -4.6236e-01,  1.9390e-03],\n",
       "                      [ 9.0729e-01, -1.6874e+00,  9.7334e-01,  1.5520e+00,  9.9266e-01],\n",
       "                      [-4.6476e-01, -4.6208e-01, -5.5587e-01, -4.4260e-01, -3.0836e-01],\n",
       "                      [ 1.5052e-01,  2.4582e+00, -1.0239e+00,  1.0859e+00, -2.3731e+00],\n",
       "                      [ 3.2153e-01, -2.2026e+00, -4.4628e-02, -6.7136e-01,  1.4944e-01],\n",
       "                      [ 6.3220e-01,  1.2353e+00,  2.1400e-01,  1.1401e+00,  5.4653e-01],\n",
       "                      [ 6.2684e-01, -3.4107e+00,  4.2982e-01,  1.6110e+00,  4.3421e-01],\n",
       "                      [ 1.2431e+00, -1.5267e+00,  2.1828e+00,  8.8222e-01,  1.7105e-01],\n",
       "                      [-4.0502e-01, -9.1383e-01, -5.2650e-01,  1.0790e-01, -6.1366e-01],\n",
       "                      [ 1.2574e-01, -1.1407e+00, -8.4436e-01,  3.7366e-02,  2.2580e-02],\n",
       "                      [-1.4513e-01,  7.6871e-01, -8.5551e-01, -1.5292e-02, -2.6827e-01],\n",
       "                      [ 7.2643e-01, -6.9785e-01,  4.8710e-01,  7.7497e-01, -6.3437e-02],\n",
       "                      [-2.1148e-01, -2.3770e-01, -4.8696e-01, -1.4646e-01, -5.7653e-01],\n",
       "                      [-1.1969e+00, -4.2588e-01,  1.5573e+00, -4.9466e-01,  1.5580e+00],\n",
       "                      [ 4.4838e-01, -3.5360e-01, -1.5337e-02,  9.1292e-01, -2.2449e+00],\n",
       "                      [ 7.0019e-01, -3.2412e-01,  2.2568e-01,  4.9156e-01,  6.3835e-01],\n",
       "                      [ 3.0903e-01, -3.2644e-01,  4.1365e-01,  6.0559e-01,  3.3217e-01],\n",
       "                      [-9.1752e-01,  5.7651e-01, -1.2005e-03, -1.0354e+00, -7.0489e-01],\n",
       "                      [ 1.3818e-01, -4.0955e-01, -6.7175e-01,  7.1701e-01,  2.2704e-01],\n",
       "                      [ 3.2147e-01,  1.1641e+00,  2.0425e+00,  3.5634e-01, -1.7478e+00],\n",
       "                      [ 6.5518e-01, -1.6927e-01, -9.0061e-01,  2.7345e-01,  9.3980e-01],\n",
       "                      [-2.7223e-01, -1.0568e+00, -1.5681e+00, -5.6291e-01,  1.0036e+00],\n",
       "                      [-6.1589e-01, -2.8142e-01,  4.2072e-02, -6.6179e-01, -3.0461e-01],\n",
       "                      [-1.1871e+00, -3.7380e-01,  1.9821e-01,  8.2397e-01, -2.6899e+00],\n",
       "                      [ 3.1023e-01,  4.1576e-01, -2.7287e-03,  2.7855e-01,  4.4523e-01],\n",
       "                      [-1.3941e-01,  3.1376e-01, -3.5680e-01, -4.8159e-01, -6.8247e-01],\n",
       "                      [-1.0774e-01,  4.7565e-02, -3.3798e-02, -1.7935e-01, -2.3229e-01],\n",
       "                      [-7.0363e-01,  4.0326e-01, -6.5380e-01, -7.5384e-01, -6.6448e-01],\n",
       "                      [-1.0979e-01, -1.0913e-01, -1.9370e+00, -5.1352e-01, -2.5644e-01],\n",
       "                      [-1.0266e-02,  4.7516e+00, -1.7443e-02, -5.0966e-01, -9.3576e-01],\n",
       "                      [ 4.9053e-01,  1.4370e-02,  3.8753e-01,  1.8414e-01,  6.8808e-01],\n",
       "                      [-2.7878e-01, -2.9427e+00, -2.1873e+00,  3.1371e-01,  3.8740e-01],\n",
       "                      [-5.1575e-01, -9.9825e-01, -7.5624e-01, -4.1754e-01,  2.5248e-01],\n",
       "                      [ 3.3135e-01, -8.3410e-01, -1.1185e+00, -7.6036e-02,  3.3463e-01],\n",
       "                      [-6.3470e-01, -6.9132e-01, -1.3257e+00, -2.3904e-01,  1.6513e-01],\n",
       "                      [ 5.1128e-01,  1.4748e+00,  1.1733e+00,  2.6959e-02, -5.5398e-01],\n",
       "                      [ 1.4846e-01, -1.0609e+01, -1.7042e+00,  1.1585e+00,  2.2729e+00],\n",
       "                      [ 4.3868e-01,  1.8692e+00,  2.0700e+00,  3.1188e-01, -9.8085e-01],\n",
       "                      [-8.7290e-03, -8.2371e+00, -1.5361e-01,  1.3110e+00,  1.1137e+00],\n",
       "                      [ 2.1036e-01, -3.0824e+00, -4.7905e-01,  5.6809e-01,  2.3058e-01],\n",
       "                      [-4.0234e-01, -2.5299e+00, -4.3034e-01,  1.0749e-01, -1.4953e+00],\n",
       "                      [-2.1005e-01, -7.7654e-01, -1.4457e+00, -7.4085e-01,  3.3718e-01],\n",
       "                      [-5.0491e-01,  7.0300e-01, -1.8061e+00, -1.2437e+00, -6.8017e-01],\n",
       "                      [-8.1690e-02, -7.0098e+00, -2.7636e+00,  6.9130e-01,  8.8117e-01],\n",
       "                      [ 2.4155e-03, -1.2044e+00,  4.1287e+00, -6.8957e-01, -1.6148e+00],\n",
       "                      [ 5.4009e-01,  1.1636e+00,  1.6231e+00, -6.6558e-01, -2.2090e-01],\n",
       "                      [ 6.8714e-02, -1.1576e+01, -2.5704e+00,  1.1519e+00,  1.8454e+00]])),\n",
       "             ('rnn.weight_hh_l0',\n",
       "              tensor([[-0.0483,  0.0364,  0.3385,  ..., -0.5911,  0.3188, -0.4142],\n",
       "                      [-0.8311, -0.2431,  0.6489,  ...,  0.0699, -0.1815, -0.4011],\n",
       "                      [ 0.8158,  0.2517, -0.3495,  ...,  0.2117, -0.8140, -0.2969],\n",
       "                      ...,\n",
       "                      [-0.0453,  0.1511, -0.1804,  ..., -0.1034, -0.8314,  0.4189],\n",
       "                      [ 0.5912,  0.6443,  0.3022,  ..., -0.4817,  1.8137,  1.0825],\n",
       "                      [-1.0541, -0.4573,  0.7165,  ...,  1.7541,  0.4071, -1.7624]])),\n",
       "             ('rnn.bias_ih_l0',\n",
       "              tensor([-3.0453e-02, -5.1310e-01, -4.3190e-01, -6.1843e-01, -5.9062e-01,\n",
       "                      -8.9413e-04, -2.4922e-01,  1.9632e-01,  1.2683e+00, -7.7812e-01,\n",
       "                      -5.6147e-01, -8.2940e-01, -1.6730e-02,  1.4051e-01,  5.0372e-01,\n",
       "                       1.5377e-01,  3.5494e-01, -4.5791e-01,  4.4656e-01, -5.3305e-01,\n",
       "                       8.6512e-01, -6.5751e-01,  1.2111e+00,  2.2945e-01,  1.2113e+00,\n",
       "                      -3.0308e-02, -2.5895e-01,  3.8119e-01,  6.4653e-01, -6.4964e-01,\n",
       "                       1.1125e-01, -1.6503e-01,  7.2676e-01,  5.3065e-01, -2.5620e-01,\n",
       "                       5.6696e-01,  5.7812e-01,  2.0263e-01, -4.7042e-01, -9.5046e-01,\n",
       "                      -4.5374e-01,  4.6383e-01, -5.6501e-01, -1.7076e-01, -5.6496e-01,\n",
       "                      -6.0902e-01,  3.7276e-01,  8.7072e-01, -4.7057e-01, -6.1644e-01,\n",
       "                       2.7668e-01, -6.4312e-01,  9.3775e-01, -6.9538e-01,  6.6256e-01,\n",
       "                      -3.9405e-01, -1.0773e-01, -1.0389e+00, -7.0585e-01, -6.0108e-01,\n",
       "                      -6.8960e-01, -4.4999e-01,  8.3354e-01, -1.1232e+00])),\n",
       "             ('rnn.bias_hh_l0',\n",
       "              tensor([-0.1881, -0.3612, -0.3545, -0.6319, -0.3602, -0.0868, -0.3297,  0.2947,\n",
       "                       1.0216, -0.7747, -0.7543, -0.7110,  0.2000,  0.1509,  0.4606,  0.0407,\n",
       "                       0.6296, -0.6806,  0.6503, -0.6707,  0.6470, -0.5310,  1.5926,  0.5519,\n",
       "                       1.0708, -0.0085, -0.4995,  0.1906,  0.8892, -0.2425, -0.1748, -0.1646,\n",
       "                       0.3400,  0.5210, -0.4999,  0.2060,  0.1589,  0.2862, -0.5628, -0.6232,\n",
       "                      -0.8951,  0.3807, -0.3396, -0.4554, -0.3733, -0.1590,  0.5076,  0.6595,\n",
       "                      -0.6069, -0.4493,  0.3261, -0.8070,  0.7057, -0.6334,  0.8420, -0.2677,\n",
       "                      -0.1339, -0.9356, -0.3875, -0.6555, -0.3448, -0.1248,  0.9101, -1.0412])),\n",
       "             ('fc.weight',\n",
       "              tensor([[ 0.4113,  0.0738, -0.8993,  0.0814, -0.6444,  0.8905,  0.0905, -1.0282,\n",
       "                       -0.5478, -0.2298, -0.2095,  0.3767, -0.6439,  0.2115, -0.5530,  1.4314]])),\n",
       "             ('fc.bias', tensor([0.6776]))])"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "total_params = sum(p.numel() for p in w[-1].values())\n",
    "print(f\"Total parameters: {total_params}\")\n",
    "w[-1]"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.4 Preview\n",
    "\n",
    "You can see the memory states and intervals generated by FSRS as if you press the good in each review at the due date scheduled by FSRS."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1:again, 2:hard, 3:good, 4:easy\n",
      "\n",
      "first rating: 1\n",
      "rating history: 1,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0d,1d,2d,5d,9d,14d,20d,1.0m,1.5m,2.3m,3.8m\n",
      "\n",
      "first rating: 2\n",
      "rating history: 2,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0d,1d,4d,8d,14d,21d,1.1m,1.8m,3.0m,4.9m,5.3m\n",
      "\n",
      "first rating: 3\n",
      "rating history: 3,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0d,5d,22d,1.8m,6.5m,8.5m,8.1m,8.1m,8.1m,8.1m,8.1m\n",
      "\n",
      "first rating: 4\n",
      "rating history: 4,3,3,3,3,3,3,3,3,3,3\n",
      "interval history: 0d,12d,1.9m,8.6m,11.3m,10.6m,10.8m,10.7m,10.7m,10.7m,10.7m\n",
      "\n"
     ]
    }
   ],
   "source": [
    "requestRetention = 0.9  # recommended setting: 0.8 ~ 0.9\n",
    "\n",
    "\n",
    "class Collection:\n",
    "    def __init__(self, network='GRU', state_dict=None):\n",
    "        self.model = RNN(network=network, state_dict=state_dict)\n",
    "        self.model.eval()\n",
    "\n",
    "    def predict(self, t_history, r_history):\n",
    "        with torch.no_grad():\n",
    "            line_tensor = lineToTensor(list(zip([t_history], [r_history]))[0]).unsqueeze(1)\n",
    "            output_t = self.model(line_tensor)\n",
    "            return output_t[0][-1].item()\n",
    "        \n",
    "    def batch_predict(self, dataset):\n",
    "        fast_dataset = RevlogDataset(dataset)\n",
    "        outputs, _ = self.model(fast_dataset.x_train.transpose(0, 1))\n",
    "        stabilities = outputs[fast_dataset.seq_len-1, torch.arange(len(fast_dataset))].transpose(0, 1)\n",
    "        return stabilities[0].tolist()\n",
    "\n",
    "my_collection = Collection(network, w[-1])\n",
    "print(\"1:again, 2:hard, 3:good, 4:easy\\n\")\n",
    "for first_rating in (1,2,3,4):\n",
    "    print(f'first rating: {first_rating}')\n",
    "    t_history = \"0\"\n",
    "    d_history = \"0\"\n",
    "    r_history = f\"{first_rating}\"  # the first rating of the new card\n",
    "    # print(\"stability, difficulty, lapses\")\n",
    "    for i in range(10):\n",
    "        stability = my_collection.predict(t_history, r_history)\n",
    "        # print('{0:9.2f} {1:11.2f} {2:7.0f}'.format(\n",
    "            # *list(map(lambda x: round(float(x), 4), states))))\n",
    "        next_t = max(round(float(np.log(requestRetention)/np.log(0.9) * stability)), 1)\n",
    "        t_history += f',{int(next_t)}'\n",
    "        r_history += f\",3\"\n",
    "    print(f\"rating history: {r_history}\")\n",
    "    print(\"interval history: \" + \",\".join([f\"{ivl}d\" if ivl < 30 else f\"{ivl / 30:.1f}m\" if ivl < 365 else f\"{ivl / 365:.1f}y\" for ivl in map(int, t_history.split(','))]))\n",
    "    print('')"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "You can change the `test_rating_sequence` to see the scheduling intervals in different ratings."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "5.49307918548584\n",
      "21.56732940673828\n",
      "55.19876480102539\n",
      "194.796142578125\n",
      "254.68382263183594\n",
      "29.878034591674805\n",
      "3.969553232192993\n",
      "13.865249633789062\n",
      "31.036619186401367\n",
      "69.40581512451172\n",
      "166.53250122070312\n",
      "208.6219482421875\n",
      "rating history: 3,3,3,3,3,1,1,3,3,3,3,3\n",
      "interval history: 0,5,22,55,195,255,30,4,14,31,69,167,209\n"
     ]
    }
   ],
   "source": [
    "test_rating_sequence = \"3,3,3,3,3,1,1,3,3,3,3,3\"\n",
    "requestRetention = 0.9  # recommended setting: 0.8 ~ 0.9\n",
    "easyBonus = 1.3\n",
    "hardInterval = 1.2\n",
    "\n",
    "t_history = \"0\"\n",
    "d_history = \"0\"\n",
    "for i in range(len(test_rating_sequence.split(','))):\n",
    "    rating = test_rating_sequence[2*i]\n",
    "    last_t = int(t_history.split(',')[-1])\n",
    "    r_history = test_rating_sequence[:2*i+1]\n",
    "    stability = my_collection.predict(t_history, r_history)\n",
    "    print(stability)\n",
    "    next_t = max(1,round(float(np.log(requestRetention)/np.log(0.9) * stability)))\n",
    "    if rating == '4':\n",
    "        next_t = round(next_t * easyBonus)\n",
    "    elif rating == '2':\n",
    "        next_t = round(last_t * hardInterval)\n",
    "    t_history += f',{int(next_t)}'\n",
    "print(f\"rating history: {test_rating_sequence}\")\n",
    "print(f\"interval history: {t_history}\")"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4 Evaluate the model"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4.1 Loss\n",
    "\n",
    "Evaluate the model with the log loss. It will compare the log loss between initial model and trained model.\n",
    "\n",
    "And it will predict the stability, difficulty and retrievability for each revlog in [./evaluation.tsv](./evaluation.tsv)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Loss before training: 2.9213\n",
      "Loss after training: 0.3069\n"
     ]
    }
   ],
   "source": [
    "my_collection = Collection(network)\n",
    "stabilities = my_collection.batch_predict(dataset)\n",
    "dataset['stability'] = stabilities\n",
    "dataset['p'] = np.exp(np.log(0.9) * dataset['delta_t'] / dataset['stability'])\n",
    "dataset['log_loss'] = dataset.apply(lambda row: - np.log(row['p']) if row['y'] == 1 else - np.log(1 - row['p']), axis=1)\n",
    "print(f\"Loss before training: {dataset['log_loss'].mean():.4f}\")\n",
    "\n",
    "my_collection = Collection(network, w[-1])\n",
    "stabilities = my_collection.batch_predict(dataset)\n",
    "dataset['stability'] = stabilities\n",
    "dataset['p'] = np.exp(np.log(0.9) * dataset['delta_t'] / dataset['stability'])\n",
    "dataset['log_loss'] = dataset.apply(lambda row: - np.log(row['p']) if row['y'] == 1 else - np.log(1 - row['p']), axis=1)\n",
    "print(f\"Loss after training: {dataset['log_loss'].mean():.4f}\")\n",
    "\n",
    "tmp = dataset.copy()\n",
    "tmp['stability'] = tmp['stability'].map(lambda x: round(x, 2))\n",
    "tmp['p'] = tmp['p'].map(lambda x: round(x, 2))\n",
    "tmp['log_loss'] = tmp['log_loss'].map(lambda x: round(x, 2))\n",
    "tmp.rename(columns={\"r\": \"grade\", \"p\": \"retrievability\"}, inplace=True)\n",
    "tmp[['id', 'cid', 'review_date', 'r_history', 't_history', 'delta_t', 'grade', 'stability', 'retrievability', 'log_loss']].to_csv(\"./evaluation.tsv\", sep='\\t', index=False)\n",
    "del tmp"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4.2 Calibration graph\n",
    "\n",
    "1. FSRS predicts the stability and retention for each review.\n",
    "2. Reviews are grouped into 40 bins according to their predicted retention.\n",
    "3. Count the true retention of each bin.\n",
    "4. Plot (predicted retention, true retention) in the line graph.\n",
    "5. Plot (predicted retention, size of bin) in the bar graph.\n",
    "6. Combine these graphs to create the calibration graph.\n",
    "\n",
    "Ideally, the blue line should be aligned with the orange one. If the blue line is higher than the orange line, the FSRS underestimates the retention. When the size of reviews within a bin is small, actual retention may deviate largely, which is normal.\n",
    "\n",
    "R-squared (aka the coefficient of determination), is the proportion of the variation in the dependent variable that is predictable from the independent variable(s). The higher the R-squared, the better the model fits your data. For details, please see https://en.wikipedia.org/wiki/Coefficient_of_determination\n",
    "\n",
    "RMSE (root mean squared error) is the square root of the average of squared differences between prediction and actual observation. The lower the RMSE, the better the model fits your data. For details, please see https://en.wikipedia.org/wiki/Root-mean-square_deviation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "R-squared: 0.9403\n",
      "RMSE: 0.0185\n",
      "[0.11526304 0.87019743]\n"
     ]
    },
    {
     "data": {
      "image/png": "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UYNVq1YRHh5OkyZNqFu3boHPLYQQ9iBzAIUQNvP19aVGjRpUrlz5vuQvJ40aNeKff/4hNDTUkiCZvwIDAwkMDKRcuXIcOHDA8hq9Xs/hw4dzPWd4eDhGo9Eyd+9e5h5Ig8Fgeaxu3bp4enpy6dKl++KoVKkSAHXq1OHgwYPZzvXbb7898D3eq1KlSrz00kuMGzfO6tcKIYSjSAIohHCaXr16ERISQvfu3dm9ezfnz59nx44dvP3221y5cgWA4cOHM336dNauXcupU6cYMmRInjX8qlatSp8+fejXrx9r1661nPOHH34AoEqVKqhUKjZs2MCNGzdITU3F39+fd955h5EjR7JixQrOnj3LH3/8wbx581ixYgUAgwcP5p9//mH06NGcPn2ab7/9luXLl9v0vocPH8769es5dOiQTa8XQgh7kwRQCOE0Pj4+7Nq1i8qVK9OzZ0/q1KlD//79ycjIICAgAIBRo0bx+uuv06dPH5o3b46/vz/PPvtsnudduHAhzz//PEOGDKF27doMHDiQtLQ0ACpUqMCHH37I2LFjCQsLY9iwYQBMmTKFDz74gGnTplGnTh06duzIxo0bqVatGgCVK1dmzZo1rF27lgYNGhAVFcXUqVNtet9169alffv2TJgwwabXCyGEvamU3GZWCyGEEEKIYkl6AIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghShhJAIUQQgghSpj/B1Opaj3ez8R/AAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from sklearn.metrics import mean_squared_error, r2_score\n",
    "import statsmodels.api as sm\n",
    "\n",
    "\n",
    "# code from https://github.com/papousek/duolingo-halflife-regression/blob/master/evaluation.py\n",
    "def load_brier(predictions, real, bins=20):\n",
    "    counts = np.zeros(bins)\n",
    "    correct = np.zeros(bins)\n",
    "    prediction = np.zeros(bins)\n",
    "    for p, r in zip(predictions, real):\n",
    "        bin = min(int(p * bins), bins - 1)\n",
    "        counts[bin] += 1\n",
    "        correct[bin] += r\n",
    "        prediction[bin] += p\n",
    "    np.seterr(invalid='ignore')\n",
    "    prediction_means = prediction / counts\n",
    "    prediction_means[np.isnan(prediction_means)] = ((np.arange(bins) + 0.5) / bins)[np.isnan(prediction_means)]\n",
    "    correct_means = correct / counts\n",
    "    correct_means[np.isnan(correct_means)] = 0\n",
    "    size = len(predictions)\n",
    "    answer_mean = sum(correct) / size\n",
    "    return {\n",
    "        \"reliability\": sum(counts * (correct_means - prediction_means) ** 2) / size,\n",
    "        \"resolution\": sum(counts * (correct_means - answer_mean) ** 2) / size,\n",
    "        \"uncertainty\": answer_mean * (1 - answer_mean),\n",
    "        \"detail\": {\n",
    "            \"bin_count\": bins,\n",
    "            \"bin_counts\": list(counts),\n",
    "            \"bin_prediction_means\": list(prediction_means),\n",
    "            \"bin_correct_means\": list(correct_means),\n",
    "        }\n",
    "    }\n",
    "\n",
    "\n",
    "def plot_brier(predictions, real, bins=20):\n",
    "    brier = load_brier(predictions, real, bins=bins)\n",
    "    bin_prediction_means = brier['detail']['bin_prediction_means']\n",
    "    bin_correct_means = brier['detail']['bin_correct_means']\n",
    "    bin_counts = brier['detail']['bin_counts']\n",
    "    r2 = r2_score(bin_correct_means, bin_prediction_means, sample_weight=bin_counts)\n",
    "    rmse = mean_squared_error(bin_correct_means, bin_prediction_means, sample_weight=bin_counts, squared=False)\n",
    "    print(f\"R-squared: {r2:.4f}\")\n",
    "    print(f\"RMSE: {rmse:.4f}\")\n",
    "    plt.figure()\n",
    "    ax = plt.gca()\n",
    "    ax.set_xlim([0, 1])\n",
    "    ax.set_ylim([0, 1])\n",
    "    plt.grid(True)\n",
    "    fit_wls = sm.WLS(bin_correct_means, sm.add_constant(bin_prediction_means), weights=bin_counts).fit()\n",
    "    print(fit_wls.params)\n",
    "    y_regression = [fit_wls.params[0] + fit_wls.params[1]*x for x in bin_prediction_means]\n",
    "    plt.plot(bin_prediction_means, y_regression, label='Weighted Least Squares Regression', color=\"green\")\n",
    "    plt.plot(bin_prediction_means, bin_correct_means, label='Actual Calibration', color=\"#1f77b4\")\n",
    "    plt.plot((0, 1), (0, 1), label='Perfect Calibration', color=\"#ff7f0e\")\n",
    "    bin_count = brier['detail']['bin_count']\n",
    "    counts = np.array(bin_counts)\n",
    "    bins = (np.arange(bin_count) + 0.5) / bin_count\n",
    "    plt.legend(loc='upper center')\n",
    "    plt.xlabel('Predicted R')\n",
    "    plt.ylabel('Actual R')\n",
    "    plt.twinx()\n",
    "    plt.ylabel('Number of reviews')\n",
    "    plt.bar(bins, counts, width=(0.8 / bin_count), ec='k', lw=.2, alpha=0.5, label='Number of reviews')\n",
    "    plt.legend(loc='lower center')\n",
    "\n",
    "\n",
    "plot_brier(dataset['p'], dataset['y'], bins=40)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.ticker as ticker\n",
    "\n",
    "def to_percent(temp, position):\n",
    "    return '%1.0f' % (100 * temp) + '%'\n",
    "\n",
    "fig = plt.figure(1)\n",
    "ax1 = fig.add_subplot(111)\n",
    "ax2 = ax1.twinx()\n",
    "lns = []\n",
    "\n",
    "stability_calibration = pd.DataFrame(columns=['stability', 'predicted_retention', 'actual_retention'])\n",
    "stability_calibration = dataset[['stability', 'p', 'y']].copy()\n",
    "stability_calibration['bin'] = stability_calibration['stability'].map(lambda x: math.pow(1.2, math.floor(math.log(x, 1.2))))\n",
    "stability_group = stability_calibration.groupby('bin').count()\n",
    "\n",
    "lns1 = ax1.bar(x=stability_group.index, height=stability_group['y'], width=stability_group.index / 5.5,\n",
    "                ec='k', lw=.2, label='Number of predictions', alpha=0.5)\n",
    "ax1.set_ylabel(\"Number of predictions\")\n",
    "ax1.set_xlabel(\"Stability (days)\")\n",
    "ax1.semilogx()\n",
    "lns.append(lns1)\n",
    "\n",
    "stability_group = stability_calibration.groupby(by='bin').agg('mean')\n",
    "lns2 = ax2.plot(stability_group['y'], label='Actual retention')\n",
    "lns3 = ax2.plot(stability_group['p'], label='Predicted retention')\n",
    "ax2.set_ylabel(\"Retention\")\n",
    "ax2.set_ylim(0, 1)\n",
    "lns.append(lns2[0])\n",
    "lns.append(lns3[0])\n",
    "\n",
    "labs = [l.get_label() for l in lns]\n",
    "ax2.legend(lns, labs, loc='lower right')\n",
    "plt.grid(linestyle='--')\n",
    "plt.gca().yaxis.set_major_formatter(ticker.FuncFormatter(to_percent))\n",
    "plt.gca().xaxis.set_major_formatter(ticker.FormatStrFormatter('%d'))\n",
    "plt.show()"
   ]
  },
  {
   "attachments": {},
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4.3 Comparision with Anki bulit-in algorithm"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "def anki(history):\n",
    "    ivl = 0\n",
    "    start_ease = 2.5\n",
    "    hard_interval = 1.2\n",
    "    ease_bonus = 1.3\n",
    "    graduating_interval = 1\n",
    "    easy_interval = 4\n",
    "    new_interval = 0\n",
    "    minimum_interval = 1\n",
    "    interval_modifier = 1\n",
    "    for i, (delta_t, rating) in enumerate(history):\n",
    "        delta_t = delta_t.item()\n",
    "        rating = rating.item()\n",
    "        if i == 0:\n",
    "            ease = start_ease\n",
    "            if rating == 4:\n",
    "                ivl = easy_interval\n",
    "            else:\n",
    "                ivl = graduating_interval\n",
    "        else:\n",
    "            delay = delta_t - ivl\n",
    "            if delay >= 0:\n",
    "                if rating == 1:\n",
    "                    ivl = max(ivl * new_interval, minimum_interval)\n",
    "                    ease -= 0.2\n",
    "                elif rating == 2:\n",
    "                    ivl = ivl * hard_interval\n",
    "                    ease -= 0.15\n",
    "                elif rating == 3:\n",
    "                    ivl = (ivl + delay // 2) * ease\n",
    "                else:\n",
    "                    ivl = (ivl + delay) * ease * ease_bonus\n",
    "                    ease += 0.15\n",
    "            # early_review\n",
    "            else:\n",
    "                if rating == 1:\n",
    "                    ivl = max(ivl * new_interval, minimum_interval)\n",
    "                    ease -= 0.2\n",
    "                elif rating == 2:\n",
    "                    ivl = max(delta_t * hard_interval / 2, ivl * hard_interval)\n",
    "                    ease -= 0.15\n",
    "                elif rating == 3:\n",
    "                    ivl = max(delta_t * ease, ivl)\n",
    "                else:\n",
    "                    ivl = max(delta_t * ease, ivl) * (0.5 * ease_bonus + 0.5)\n",
    "                    ease += 0.15\n",
    "            ivl = ivl * interval_modifier\n",
    "        ease = max(1.3, ease)\n",
    "        ivl = max(1, round(ivl+0.01))\n",
    "    return ivl\n",
    "\n",
    "def sm2(history):\n",
    "    ivl = 0\n",
    "    ef = 2.5\n",
    "    reps = 0\n",
    "    for tensor in history:\n",
    "        for i, r in enumerate(tensor[1:]):\n",
    "            if r.item() == 1:\n",
    "                rating = i + 2\n",
    "                break\n",
    "        if rating > 2:\n",
    "            if reps == 0:\n",
    "                ivl = 1\n",
    "                reps = 1\n",
    "            elif reps == 1:\n",
    "                ivl = 6\n",
    "                reps = 2\n",
    "            else:\n",
    "                ivl = ivl * ef\n",
    "                reps += 1\n",
    "        else:\n",
    "            ivl = 1\n",
    "            reps = 0\n",
    "        ef = max(1.3, ef + (0.1 - (5 - rating) * (0.08 + (5 - rating) * 0.02)))\n",
    "        ivl = max(1, round(ivl+0.01))\n",
    "    return ivl\n",
    "\n",
    "dataset['sm2_interval'] = dataset['tensor'].map(sm2)\n",
    "dataset['sm2_p'] = np.exp(np.log(0.9) * dataset['delta_t'] / dataset['sm2_interval'])\n",
    "cross_comparison = dataset[['sm2_p', 'p', 'y']].copy()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "R_Metric:  0.03883432783665475\n",
      "R-squared: -21.5980\n",
      "RMSE: 0.1408\n",
      "[0.76478601 0.15818509]\n"
     ]
    },
    {
     "data": {
      "image/png": "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6+Djtpbkz+su6L8eOk1W8iciUoyMGjWKhQsX5nu7ReIMoIjko7Tr8M14+PcqS7n6Q9BnGZQNcmxcIiJis927d/PDDz+wadMm7r333iw3gWzYsMGudpUAipQkF/60TPmePwiYoO04aDcenPWrLiJSHPn5+dG7d/4/llPfCiIlRfRnsDkE0q6Bd0XovQRqdXB0VCIikgeffPJJgbSrBFCkuEtNgi3jIHq1pVyzLfReBj4BOe8nIiKllm4CESnOYg/Ckg6W5M/kZLnDd8BGJX8iUupNnz6dBx54AB8fHypWrEivXr04cuRIpjrJycmMGDGCu+66izJlytCnT58sTyc7c+YM3bp1w8vLi4oVKzJu3DjS09Mz1dm2bRtNmzbF3d2d2rVrZ7tCyaJFi6hRowYeHh60bNmS3bt35+o4atasyd13333bl710BlCkODIM2Pd/sOUNSL8OZQItN3rUbOPoyEREioTt27czYsQIHnjgAdLT03nzzTfp3LkzBw8exNvbG4AxY8awefNm1q5di6+vLyNHjqR3797s3LkTgIyMDLp160ZgYCA//fQT586dY+DAgbi6ujJt2jQATp48Sbdu3Rg+fDirV68mMjKSF154gUqVKhEcHAzA559/TkhICGFhYbRs2ZJ58+YRHBzMkSNHqFixYo7HMXr06EzltLQ09u3bR3h4OOPGjbP781ECKFLcpCTCphD44wtLuVZHeGIJlKng2LhERIqQ8PDwTOWVK1dSsWJF9u7dS9u2bbly5QrLly/n008/pWPHjoDlerv69evz888/8+CDD/Ldd99x8OBBvv/+ewICAmjcuDFTp05l/PjxTJ48GTc3N8LCwqhZsyZz5swBoH79+uzYsYMPPvjAmgDOnTuXYcOGWZ9yFhYWxubNm1mxYsUdn/E7atSobLcvWrSIPXv22P35aApYpDiJ+QOWtLckfyZny3N8+69X8icipUZiYiIJCQnWV0pKSq72u3LlCgD+/v4A7N27l7S0NDp16mStU69ePapVq8auXbsA2LVrF40aNbI+nQwgODiYhIQEDhw4YK1zcxs36txoIzU1lb1792aq4+TkRKdOnax17NG1a1fWr19v9/5KAEWKA8OAX5fD0kfg0jEoWxkGb4Y2IaBHJYpIKdKgQQN8fX2tr+nTp99xH7PZzOjRo3nooYdo2LAhADExMbi5ueHn55ep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YPj7+xtHjx697T4iIoXNxbHpp4gUZ5s2baJMmTKkpaVhNpt59tlnmTx5svX9Ro0aZTrz9dtvv3Hs2LEs1+8lJydz/Phxrly5wrlz52jZsqX1PRcXF5o3b55lGviG6OhonJ2dadeuXa7jPnbsGNeuXePRRx/NtD01NZUmTZoAcOjQoUxxALRq1SpX7Y8bN47Bgwdz7tw5xo0bxyuvvELt2rVzHZ+ISEFTAigiduvQoQOLFy/Gzc2NoKAgXFwy/0nx9vbOVL569SrNmjVj9erVWdqqUKGCXTF4enravM/Vq1cB2Lx5M5UrV870nru7u11x3Kx8+fLUrl2b2rVrs3btWho1akTz5s1p0KBBntsWEckPugZQROzm7e1N7dq1qVatWpbkLztNmzbl6NGjVKxY0Zog3Xj5+vri6+tLpUqV+OWXX6z7pKens3fv3tu22ahRI8xms/XavVvdOAOZkZFh3dagQQPc3d05c+ZMljiqVq0KQP369dm9e3emtn7++ec7HuOtqlatSr9+/Zg4caLN+4qIFBQlgCJSaPr370/58uXp2bMnP/74IydPnmTbtm289tprnD17FoBRo0YxY8YMNm7cyOHDh3nllVdyXMOvRo0aDBo0iCFDhrBx40Zrm1988QUA1atXx2QysWnTJi5cuMDVq1fx8fHh9ddfZ8yYMaxatYrjx4/z73//m4ULF7Jq1SoAhg8fztGjRxk3bhxHjhzh008/ZeXKlXYd96hRo/jXv/7Fnj177NpfRCS/KQEUkULj5eVFVFQU1apVo3fv3tSvX5+hQ4eSnJxM2bJlARg7diwDBgxg0KBBtGrVCh8fH5544okc2128eDF9+/bllVdeoV69egwbNoykpCQAKleuzLvvvsuECRMICAhg5MiRAEydOpV33nmH6dOnU79+fbp06cLmzZupWbMmANWqVWP9+vVs3LiR+++/n7CwMKZNm2bXcTdo0IDOnTszadIku/YXEclvJuN2V1aLiIiISImkM4AiIiIipYwSQBEREZFSRgmgiIiISCmjBFBERESklFECKCIiIlLKKAEUERERKWWUAIqIiIiUMkoARUREREoZJYAiIiIipYwSQBEREZFSRgmgiIiISCmjBFBERESklPn/FM2YQt+bBNMAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "R_Metric = mean_squared_error(cross_comparison['y'], cross_comparison['sm2_p'], squared=False) - mean_squared_error(cross_comparison['y'], cross_comparison['p'], squared=False)\n",
    "print(\"R_Metric: \", R_Metric)\n",
    "plot_brier(dataset['sm2_p'], dataset['y'], bins=40)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Universal Metric of LSTM: 0.0092\n",
      "Universal Metric of SM2: 0.0724\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi4AAAIjCAYAAAAk1JABAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAADDBUlEQVR4nOydd3wcxd24n907lVPvlpsky0UuuBs3bLANptihk1BMEjohMYRAQoAkb14n4SUkJEAICYH8IITY4EDoVoyNCwZs3OUqy92SLcvqvd3d7u+Plc6S1U7y3e2ONM/no49Oo729Z+ZOu1/NzHdG0XVdRyKRSCQSiUQAVLMFJBKJRCKRSLxFBi4SiUQikUiEQQYuEolEIpFIhEEGLhKJRCKRSIRBBi4SiUQikUiEQQYuEolEIpFIhEEGLhKJRCKRSIRBBi4SiUQikUiEQQYuEolEIpFIhEEGLhKJRCKRSIRBBi4SSR9gz5493HTTTaSmphIaGsrAgQOZP38+L774Yqvj0tLSUBSFyy67rN3zvPrqqyiKgqIobNu2zVO+Zs0a7rrrLkaMGEFYWBjp6encc889nD592q/1Oh/+93//F0VRKC4u7vS448ePc+eddzJ06FBCQ0NJTk7m4osv5pe//CUA//jHPzxt0tlXWlpaq9dVVZW8vLw2r1dZWYnD4UBRFBYvXuzzekskomM3W0AikfiXjRs3MnfuXFJSUrj33ntJTk4mLy+Pr7/+mhdeeIEHH3yw1fGhoaGsW7eOgoICkpOTW/1u6dKlhIaGUl9f36r8pz/9KaWlpXzzm99k+PDhHD16lD//+c988sknZGVltTmPKBw+fJgLL7wQh8PBXXfdRVpaGqdPn2bHjh0888wzLFmyhIsvvpg333yz1fPuuecepk6dyn333ecpi4iIaHVMSEgIb731Fo899lir8vfee89/FZJIegEycJFIejlPPfUU0dHRbN26lZiYmFa/KywsbHP8RRddxNatW1m+fDk//OEPPeUnT57kiy++4Prrr+c///lPq+f88Y9/ZNasWajq2U7cK6+8kksuuYQ///nP/OY3v/FtpQLEc889R3V1NVlZWaSmprb6XXPbpaenk56e3up33/ve90hPT+f222/v8NwLFixoN3BZtmwZCxcubNPGEonEQA4VSSS9nCNHjjBmzJg2QQtAUlJSm7LQ0FBuuOEGli1b1qr8rbfeIjY2liuuuKLNcy6++OJWQUtzWVxcHNnZ2Z36LV68mIiICGpra9v87tZbbyU5ORm32w3Atm3buOKKK0hISMDhcDBkyBDuuuuuTs9/Phw5coRBgwa1CVqg/bbrDrfddhtZWVkcOHDAU1ZQUMDatWu57bbbzuvcEklvRgYuEkkvJzU1le3bt7N3716vn3PbbbexZcsWjhw54ilbtmwZN910E0FBQV6do7q6murqahISEjo97uabb6ampoYVK1a0Kq+treXjjz/mpptuwmazUVhYyOWXX87x48d5/PHHefHFF1m0aBFff/211/XqLqmpqeTl5bF27Vqfn/viiy9m0KBBrQLE5cuXExERwcKFC33+ehJJb0EGLhJJL+fHP/4xtbW1TJgwgZkzZ/LTn/6UVatW4XQ6O3zOvHnzSE5O5q233gIgOzubrKysbvUEPP/88zQ2NnLzzTd3etysWbMYOHAgy5cvb1W+YsUKampqPM/fuHEjZWVlLF26lB//+Mfcc889/OY3v2H//v1eO3WXhx56iODgYC699FImTpzIww8/zIcffthu71B3URSFW265xdPGYMwhuuGGGwgJCTnv80skvRUZuEgkvZz58+ezadMmrrnmGnbt2sXvfvc7rrjiCgYOHMhHH33U7nNsNhvf+ta3PDfVpUuXMnjwYGbPnu3Va27YsIElS5bwrW99i3nz5nV6rKIofPOb3yQzM5Pq6mpP+fLlyxk4cCCzZs0C8Ax1ffLJJ50GXb5kzJgxZGVlcfvtt3P8+HFeeOEFrrvuOvr168err7563ue/7bbbOHz4MFu3bvV8l8NEEknnyMBFIukDXHjhhbz33nuUlZWxZcsWnnjiCaqqqrjppps67LG47bbb2L9/P7t27WLZsmXccsstKIrS5WsdOHCA66+/ngsuuIC///3vXvndfPPN1NXVeQKp6upqMjMz+eY3v+l5zUsuuYQbb7yRJUuWkJCQwLXXXsvrr79OQ0ODl63QM0aMGMGbb75JcXExu3fv5v/+7/+w2+3cd999fPbZZ+d17okTJzJy5EiWLVvG0qVLSU5O7jLQk0j6OjJwkUj6EMHBwVx44YX83//9H3/9619xOp2888477R47bdo0hg4dysMPP8yxY8e86gnIy8vj8ssvJzo6mszMTCIjI73ymj59Omlpafz73/8G4OOPP6aurq7VMJOiKLz77rts2rSJxYsXc+rUKe666y4mT57cqqfGX9hsNsaOHcsTTzzB+++/Dxg9UefLbbfdxvLly1m2bBk333xzm0nOEomkNfIvRCLpo0yZMgWg00Xibr31VtavX8+oUaOYMGFCp+crKSnh8ssvp6GhgU8//ZT+/ft3y+db3/oWK1eupLKykuXLl5OWlsb06dPbHDd9+nSeeuoptm3bxtKlS9m3bx9vv/12t17rfPGm7bzltttu4/Tp0xw8eFAOE0kkXiDXcZFIejnr1q1jzpw5bYZ5MjMzAcjIyOjwuffccw82m41p06Z1+ho1NTUsWLCAU6dOsW7dOoYPH95tz5tvvpnf/e53vPHGG6xcubLVGjIAZWVlxMTEtKpHczDVcrioORNq6NCh3XY4ly+++ILp06e3yaTypu28ZejQoTz//PPU1dUxderU8z6fRNLbkYGLRNLLefDBB6mtreX6669n5MiRNDY2snHjRk+vxp133tnhc1NTU/nf//3fLl9j0aJFbNmyhbvuuovs7OxWa7dERERw3XXXdXmOSZMmMWzYMH72s5/R0NDQJhvpjTfe4C9/+QvXX389Q4cOpaqqildffZWoqCgWLFjgOe7SSy8FjKX6veGPf/wjYWFhrcpUVeXJJ5/kmWeeYfv27dxwww2MGzcOgB07dvDPf/6TuLg4Hn74Ya9eoyvODdIkEknHyMBFIunlPPvss7zzzjtkZmbyyiuv0NjYSEpKCt///vf5+c9/3u7CdN0lKysLgNdee43XXnut1e9SU1O9ClzA6HV56qmnGDZsGJMmTWr1u0suuYQtW7bw9ttvc+bMGaKjo5k6dSpLly5lyJAhPXZ/+umn25TZbDaefPJJnnzySZYtW8bnn3/O0qVLqa2tpX///txyyy384he/OK/XlUgkPUPRdV03W0IikUgkEonEG+TkXIlEIpFIJMIgAxeJRCKRSCTCIAMXiUQikUgkwiADF4lEIpFIJMIgAxeJRCKRSCTCIAMXiUQikUgkwiDXcekCTdPIz88nMjLSqw3mJBKJRCKRGOi6TlVVFQMGDPDZPlwycOmC/Px8Bg8ebLaGRCKRSCTCkpeXx6BBg3xyLhm4dEHz7rbHjh0jLi7OZBvvcTqdrFq1issvv7zNPitWR1R3Ub1BXHdRvUFcd1G9QVx3Ub0BSktLGTJkiNc7xXuDDFy6oHl4KDIykqioKJNtvMfpdBIWFkZUVJRwH3RR3UX1BnHdRfUGcd1F9QZx3UX1BsMd8OlUC7nkfxdUVlYSHR1NeXk50dHRZut4TfO4oohzc0R1F9UbxHUX1RvEdRfVG8R1F9UboKKigpiYGCoqKnz2z7/MKurFOBwOsxV6jKjuonqDuO6ieoO47qJ6g7juonr7Axm4eInL5TJboVu4XC4yMzOF8wZx3UX1BnHdRfUGcd1F9QZx3UX1Bv/cO2XgIpFIJBKJRBhk4CKRSCQSiUQYZOAikUgkEolEGGRWUReInFXkcrmw2+3CzUIX1V1UbxDXXVRvENddVG8Q111Ub5BZRQC89NJLpKWlERoayrRp09iyZUuHx+7bt48bb7yRtLQ0FEXh+eefD5yoBairqzNboceI6i6qN4jrLqo3iOsuqjeI6y6qtz8QKnBZvnw5jzzyCL/85S/ZsWMH48eP54orrqCwsLDd42tra0lPT+e3v/0tycnJ5/Xaos3mdrlcrFu3TjhvENddVG8Q111UbxDXXVRvENddVG+QWUX88Y9/5N577+XOO+9k9OjRvPzyy4SFhfHaa6+1e/yFF17I73//e2655RZCQkICbCuRSCQSicTXCLPkf2NjI9u3b+eJJ57wlKmqymWXXcamTZt89joNDQ00NDR4fq6srASMZYubly5WVRWbzYbb7UbTtFY+NpsNl8tFy6lDNpsNVVU7LG8+bzN2u/G2nBupdlQeFBSEpmm43W5PWfMxmqa1Or+iKNjt9g7drVCn5ud25H5uXa1Sp+bf67ruGZNuSXvvk1Xq1JV7dz57gaxTS39//j35o07tuQfyGnE+dWr2PrdOZl/3vKlTe+5WuO51VqdmRLuW+wthApfi4mLcbjf9+vVrVd6vXz8OHDjgs9d5+umnWbJkSZvydevWERYWBkBKSgoTJ05k9+7d5Obmeo7JyMhg5MiRbNmyhaKiIk/5hAkTSE1NZcOGDVRVVXnKZ8yYQVJSEqtWrWr1Zs+dOxeHw0FmZmYrhwULFlBXV8e6des8ZXa7nYULF1JcXNwqgIuIiMBut3Pq1Cn27NnjKU9MTGTmzJkcOnSInJwcT7nV6mS32ykpKWHr1q2e8sjISObNm0deXh5ZWVmWrZPL5aK+vt6r98lqdaquriYyMvK8Pntm1Gn16tV+/XvyZ51Wr15tyjWip3Xat2+fx7u775PZdTpy5Egrd6td9zqq0+zZs1FV1ePdsk5Wue51VKfp06fja4TJKsrPz2fgwIFs3LiRGTNmeMofe+wxPv/8czZv3tzp89PS0nj44Yd5+OGHOz2uvR6XwYMHU1xc7JkRbbWI1uz/emWdZJ1knWSdZJ1kndorr6urIzo62qdZRcL0uCQkJGCz2Thz5kyr8jNnzpz3xNuWhISEtDsfxmaztdmV02azYbPZ2hzb/AZ6W97Rbp/dKVdVFVU9O2VJ0zQKCwtJSEho9/iO3K1Qp67cz61rV+6BqpOmaRQXF5OQkICqqt1yN7tO3ri3PN4b90DU6Vzvjhy7Wx6IOrXnHshrRFflHbkrikJZWVkr787crVSnjtytcN3rzL29z0pX7lapU01NTbvHnQ/CTM4NDg5m8uTJrFmzxlOmaRpr1qxp1QPjL1pGuiLgdrvZtGmTcN4grruo3iCuu6jeIK67qN4grruo3uCfe6cwPS4AjzzyCN/97neZMmUKU6dO5fnnn6empoY777wTgO985zsMHDiQp59+GjAm9O7fv9/z+NSpU2RlZREREcGwYcNMq4dEIvERzqZhXbcLOvgPUCKR9C6EClxuvvlmioqK+J//+R8KCgqYMGECK1eu9EzYzc3NbdWNlp+fz8SJEz0/P/vsszz77LNccsklrF+/PtD6EonEl9SWwpcvElftgG15MP1esMtlDySS3o5QgQvA4sWLWbx4cbu/OzcYSUtLw1dzj0VbZllRFCIjI4XzBnHdRfUGQd3P7MW2dzmzK0+hFaXC8Euh3yizrbxGyDZHXG8Q111Ub/DPvVOYrCKzaN6ryJczoiUSiQ/Y8x/4z11nfx77Tbj+FWhnUqZEIjEHf9xD5V+4l7RMKxMBTdM4ceKEcN4grruo3iCoe9ZSABojU9AVFfa8A5mPgiD/iwnZ5ojrDeK6i+oN/rl3ysDFS0Sbze12u8nKyhLOG8R1F9UbBHQ//iUcWYOu2vl88IO4r3kJUGDba7DycSGCF+HavAlRvUFcd1G9QWYVSSQSiRGUfGasbq1N+Da1ej/0CxYAOnz4fdj8Mqh2uPw3IOCcAIlE0jmyx0UikYjFwZVwcgvYHWizHj1bPnERfON54/GmP8OaXwnR8yKRSLqHDFy8RLTZ3IqikJiYKJw3iOsuqjcI5K5psObXxuNp96NE9W/tPeVOWPCs8fjLP8Lnz5jj6QXCtPk5iOoN4rqL6g0yq8gUZFaRRGIhdv8b3rsXQqLh4V3giG3/uE0vwadPGo/n/QIu/nHgHCUSiQeZVWQiok2KcrvdHDhwQDhvENddVG8QxN3VCOueMh5f9BA4Yjv2nvEDuKxpl/e1v4av/hRYVy8Qos3bQVRvENddVG/wz71TBi5eIloamqZp5OTkCOcN4rqL6g2CuO/8J5Qdh/AkmP4A0IX3rIdh7s+Mx6t/AV+/HDBVbxCizdtBVG8Q111Ub5Dp0BKJpK/SWAuf/954fPFPIDjcu+dd8phxPMDKn8LW/+cfP4lEEjBk4CKRSKzPlr9BdQHEpMDkO7r33Lk/g4t+aDxe8QjseNPnehKJJHDIwMVLVMGWEVdVlZSUFOG8QVx3Ub3B4u515fDl88bjOU+CPdjzK6+8FcWY7zL9+8bPHz0Iu972m663WLrNO0FUbxDXXVRv8M+9U2YVdYHMKpJITGbNr+CLP0DiKHjgK1BtPTuPrkPmj2Hr30FR4YZXYexNvnWVSCStkFlFJiLabG63283OnTuF8wZx3UX1Bgu7V52Br/9qPJ738zZBS7e8FQWu+j1M+i7oGrx3H+z/0A/S3mHZNu8CUb1BXHdRvUFmFZmKaLO5NU0jNzdXOG8Q111Ub7Cw+xfPgrMWBk6BkQvb/Lrb3qpqrK47YRHobnj3LjiQ6VtnL7Fsm3eBqN4grruo3iCziiQSSV+i7Dhse914fOn/+G7fIVWFa16Esd8EzQX//g4cXOWbc0skEr8jAxeJRGJN1v8WNCekz4H0S3x7btUG170Mo68zXmP57XBkrW9fQyKR+AUZuHiJaLO5VVUlIyNDOG8Q111Ub7Cge2H22cyfS/+nw8POy9tmhxv/DiO/Ae4GeOtWOLahh8Ldx3Jt7iWieoO47qJ6g8wqMgWZVSSRmMDbi+DAJzDqarj5X/59LVcDLP82HPoUgsLg9v9A6kz/vqZE0keQWUUm4nK5zFboFi6Xi40bNwrnDeK6i+oNFnM/uc0IWhTV2CCxE3zibQ+Bb/0Ths4zJgIv/Sbkben5+bzEUm3eDUT1BnHdRfUG/9w7ZeDiJaJ1TOm6TlFRkXDeIK67qN5gMfc1TZsjjr8VEjM6PdRn3kGhcMsyGHIxNFbDv26EUzvO75xdYKk27waieoO47qJ6g3/unTJwkUgk1uHIOmOeiS0Y5jwe2NcOcsCtb0PKTGiohDevh9O7A+sgkUi6RAYuEonEGui6sUouwJS7jH2JAk1wOCz6NwyaCvXl8M9r4cz+wHtIJJIOkYGLl9hsPVxm3CRsNhsTJkwQzhvEdRfVGyzinv0x5O+AoHCY/WOvnuIX75BIuP1dGDAJ6krhn9dAUY7vzt+EJdq8B4jqDeK6i+oN/rl3yqyiLpBZRRJJANDc8JcZUJwDF//EWN7fbOrK4I1roGA3RPSDOzIhYZjZVhKJUMisIhMRbTa3y+Vi7dq1wnmDuO6ieoMF3He9bQQtjliY+aDXT/OrtyMWvvMhJI2B6jPwxtVQetRnpze9zXuIqN4grruo3iCzikxFtI4pXdepqqoSzhvEdRfVG0x2dzXA+qeNx7N+BKHRXj/V795hcUbwkjgSqvKNHpjyXJ+cWtTPi6jeIK67qN4gs4okEklvZNvrUJEHkf1h6n1m27QlItEIXuKHGZ7/+AZUnDLbSiLps8jARSKRmEdDNWz4vfH4kseMlGQrEpkM3/0YYodA+Qlj2KjytNlWEkmfRAYuXiLabG6bzcaMGTOE8wZx3UX1BhPdv/4r1BZDXDpM/Ha3nx5Q76gBRvASkwKlR4xso+rCHp9O1M+LqN4grruo3iCzikxBZhVJJH6ithReGG8s9nbj/4OxN5lt5B1lx+H1BVB5ChJHwR2fQHiC2VYSiSWRWUUm4nQ6zVboFk6nkxUrVgjnDeK6i+oNJrl/+ZwRtPQbC2Nu6NEpTPGOTTN6XiKSoSgb/nmdEYR1E1E/L6J6g7juonqDf+6dMnDpxYiYOteMqO6iekOA3SvzYcsrxuNLfwFqzy9FprR5/FAjeAlPgjN7jO0B6sq7fRpRPy+ieoO47qJ6+wMZuEgkksDz+e/AVQ+Dp8Pwy8226RmJI+C7H0FYPJzOgqU3QX2l2VYSSa9HBi4SiSSwlByBnW8ajy/7JSiKuT7nQ9IoI1XaEQsnt8KybxmZUhKJxG/Iybld0DyxqLy8nOho7xfGMpvmBYsiIyNRBLsxiOouqjcE2P3du2HvuzBsvrEn0HlgmTbPzzIWp2uogLTZcNu/ITis06dYxr2biOoN4rqL6g1QUVFBTEyMnJwr8Q6Hw6JrYniBqO6iekOA3Av2GEELGHNbfIAl2nzABPj2exAcCce/gLdvBWd9l0+zhHsPENUbxHN3uTWqG1y4VDs1DS40TfY1yMDFS0SbGOVyucjMzBTOG8R1F9UbAui+5tfG9zE3QP/x5306S7X5oClGD1JQOBxdD8tvN7Yz6ABLuXcDUb1BDHe3ppNTUMWqfQX8vy+P8ZsV+3lmxT6+WLOa32bu4+n/ZvOvr0+w7kAhuSW1lt8GwB9tbff5GSUSiaQ9cr+GQ5+CYrPG7s/+IGU6LPo3/OsmOLwa/v1d+NY/wR5stpnE4tQ2usjKLefroyUcL6mh0aUTZFMIC7HjsBt9DHZVpbzWSX55MS5NJzzYzojkSKYOiWPcwGjstr7RFyEDF4lE4n90HT5bYjyeeLuRTtxbSZsFt70Ny26Gg/+F/9wFN70OtiCzzSQW5dCZKj7elc/BwmpCbCr9okIJCz57e1Z0N9RBTFgQ0YqxEq2u61TVu9hzsoK9pyoYPyiGq8cPIDk61KxqBIy+EZ5JJBJzOfwZ5G4EWwhc8lOzbfxP+hy4eSnYgiH7Y3j/fnBbd3hCYg4ut8aK3fm8/PkRjhTVMCQ+nLSE8FZBS0coikKUI4hhSRH0jw5l24ky/rz2EF8fLbH88NH5IrOKukDkrCKXy4XdbhduFrqo7qJ6g5/dNQ1eudiYmDtjMVzxlM9Obfk2z1lpzHXRnDDuFrjuL6Ce/Y/Z0u4dIKo3WMvd6dZ4f+cp1h0oJC48mPjw4I6ddB0FDR21w+UDdF3nZFkdbl3nugkDmJORZHodQWYVSbpJXV2d2Qo9RlR3Ub3Bj+773jOCluBImPWIz09v6TbPuBK++boxr2f32/DxQ0Yg14Sl3TtBVG+whruu63yyK591BwpJjgolISKkyyDDrnfeY6coCoPjwnAE2fggK59NR0t8qWwpZODiJVaehd4eLpeLdevWCecN4rqL6g1+dHc7YV1TD8vMByE83qenF6LNR10NN/4dFBV2/gsyHwVNw1VdbH33dhCizTvAKu5ZeeWsyykkMTKEKEfXc58UNAbXH0VB6/LYflGhBKkqn+w6zcmyWl/onhf+aGsZuEgkEv+x819QehTCEmDG9822MY8LboDrXgYU2PYa/GMBrPmN8busZVBXZqqeJHCU1zaSuec0iqIQG+afbLMBMaGU1jTy8a58nO6ugx3RkIGLRCLxD846+PwZ4/HsRyEk0lwfsxl/Myz4vfE4dxPq6Z1GttWRNbD9n62GkCS9l/U5RZwoqWVwbOcrK58PiqKQEh/GnlMVbD/R+4JiGbj0Yux2cbPdRXUX1Rv84L7lVag6DVGDYMpdvj13C4Rq86RRkDwOANuZXUzO/RuKYoOC3UbPlCAI1ebnYKZ7RZ2TbSdKiQsPxqZ2b+Ks1s3btSPIhk1V2Hy0BHcvW21XZhV1QXNWkS9nREskvZ76CnhhvDEEcs2fYdK3zTayBjn/NYaGnHXGAnXN2IJgyBxjjZthl8reqV7KV4eLeXPTCYYlRXQ7cOkJNQ0uiqobWDx3GMP7mfOZ8sc9VPa4eIkmWDeupmkUFhYK5w3iuovqDX5w3/hnI2hJGAHjb/XNOdtBuDaP7G+kQyeORBt7M3WJE9BtIcYk5sOr4Z3vwu/S4V83wtb/B5X5Zhu3Qbg2b4HZ7rtPVhBkU7oftOg6Dne1MbTYDcJD7NQ7NQ6eqere6/kQf7S1DFy8xO12m63QLdxuN5s2bRLOG8R1F9UbfOxeXQSbXjIez/0Z2PzXNS9cm/cbAwOnQPkJ3LrCqkGP4Mq4Gi5+zFjjJi4d3I3Ggn0rHoE/joJX5sDnvzNSyi3QQS5cm7fATPcGl5tT5bVEhnZ/BWUFjf4NeV5lFZ1LqF0lt9S87CJ/tLW4A5USicSafPEHcNZA/wkw+lqzbayFLciY75M0CvL3Qhlw4d2QOs3oibn8N1B8EHIy4UAmnNwK+TuNr3VPQXQKZFwFIxdA6kVyG4FuYuZcj8LKBmoaXCREhAT0dcND7Jwqr6Pe6SY0yBbQ1/YXMnCRSCS+ozwXtv0/4/Gl/9PhKp99muAwYx5L6sWQmQmDLvSspouiQGKG8TXrR1BdCAdXGnNjjqyDilzY8jfjKyQahs83Apnh8yHU/yt7l9Y0UlZlLOB2srSOhGh61IMQKDRN50RpLTtzy8g+XUmj08kkBV747CBjB8cxfnBswPb2qahzUu/UcHQzeGh0aZTV1FNdpeCOcxLpULu1Iq4jyEZFXSOV9U4ZuPQ1rLB0cndQFIXIyEjhvEFcd1G9wYfu658xhjrSZsPQeb6R64Re3+YRSTDpO8ZXYy0cXQ85K4ytBGqLYe+7xpdqNzZ3zFhorNYbk+IzT5db41BhNduOl7I3vxJno5PJoXZeXHeIsNBgJqfGMXFwDKnxYZZ6H/bnV7I+p5BDhVXUNrqJDA0ixKZTqwZRUNnAoZ2n+Cy7kAsGRnPpqCQG+TE9GYzeHh29wzZqcLkpq3FSUtNAaU0jJTWNlNY0UlXfvICbDcjDEWSjf3QoydGhJEeF0i8qlGB7x7M+FAU03bzeJn98JmRWURfIrCKJxEuKcuAv00HX4O7PYPCFZhv1XjQ3nNxmDCnlZBrDSy3pN9YYTsq4yhiy6+HN43RFHf/emsfhwmpcmk5CRAjhITZURcGt6VTUOSmraSQsxM7YQdHcNHkQUSb3wOi6zqYjJby/8xQ1jS6So0KJCGm7N5Gu65TXOTlTWU//aAe3Tk0hI9l/mTd7Tlbw0rpDpMaHUVbrpKTaCEyag5Tqho5XmA0LthEWbKO0ppFz4w8FiI8IJjnKCGb6RzuIDQvy1LemwUVZbSOPXTmSflGB2znarekUVzdQXFrOBUP6+/QeKgOXLmgOXMrKyoiJiTFbx2s0TSMvL4/BgwejqmLNwRbVXVRv8JH78m9D9keQsQBufcu3gh3Q59u8meLDTUHMfyHvayN4bCZywNl5MWmzwe7dHIu80lr+sfEYp8rqSYkLwxHcNMyg60S6y6myxYCioOs6VfUuTpXXMWZAFHfMHEJ0mHnBy/YTpSz9OhdVVRgQHdo6YDnHHUDTdY4V1xAXHsxdFw0hLSHcJx4VtU4OFVZxqLCag2eq2H2ynH35ldQ7O55gGx5sIy4imPiwEOLCg4mLCCYuPBiHXSXSXU4ZURTVNHK6op6CinoKKutb9MicJdiuGoFMVCgRoXaiHXb+95oLiPZie4HzpaLOyd5TFWw+WsKp8jpqqyt5+e5LfBq4CDdU9NJLL/H73/+egoICxo8fz4svvsjUqVM7PP6dd97hF7/4BcePH2f48OE888wzLFiwoNuvK9oMerfbTVZWFgMGDBDugi6qu6je4AP3UzuMoAUF5v3C534d0afbvCUJwyDhIbjoIagphkOrjEDm8FqoyjfmHW37fxAcYcyvyVhozIsJi2v3dCXVDSzdfIL88nqGJ0WgtkjfVdBIbCyg2hGFjg1FUYhyBBEaZGNffiVvbc3ljplppsynKKlu4L0dp9CBgTGONr8/1x1AVRTSE8I5XFjNO9vzePiyEQTZvH8/ymsbOXim2ghSWnwvrGro8DkRIXYjMGnaFbr5cUdtpuhuj3f/aAf9o8/WrbrB5QliCirqOVNZT6NLI7e0tlU20c7ccialxDIxJYaJKbFkJEd2q55does6Xx4uZtW+MxRV1RNitxEfEUyU4vttDYQKXJYvX84jjzzCyy+/zLRp03j++ee54ooryMnJISkpqc3xGzdu5NZbb+Xpp5/mG9/4BsuWLeO6665jx44dXHDBBSbUQNKbaR5D1nrZKpVeseZXxvdx34J+o8116euEJ8CE24wvZz0c23B2Xkx1Aez/0PhSbJA60+iNyVgAcUM8p/j6aAlHi2oY3u9s0GJ315NUk0NC9SGqY8Yw+swnFEaMpCRsKJpqJ9iuMiQhnN155ezLr2ByavtBkT/ZfbKC4uoGRnRzsbXmnZVPlNSSU1DFBQPbTnQurWnk0JkqDhZWc/hMVVOwUk1xdccByoDoUIb1i2REUgTDkiLYcqwUl6YxJCGi23XriIgQO8Oazg/G9ae4psEIZirqyS2tpabRzfGSWo6X1PLezlMAhAapjBsY0xTIxDDhPCYq67pO5p7T/HdvAaFBNoYlRXrWqmlw+T6AFSpw+eMf/8i9997LnXfeCcDLL7/MihUreO2113j88cfbHP/CCy9w5ZVX8pOf/ASAX//616xevZo///nPvPzyy9167ZqaGkJDAzc+eL44nU7q6+upqakhKMi6s/7bQ0T3Q2eq+CQrj+HOev68ei/XT04N6Hjy+XI+ba7mfoXj6Dp01U7dtIfRa2r8ZNkaXdc5VVJNfX09eYVl9IvxTRd/oAjY53zgRcbX3N+gFuzCdngV9sOfohYfgONfGF+fPomWkIFr2BXUpF7KxmwHYaqOu6EeNxDVcJrRZz4mpj4PlxJCcehQBhVuIqHwK4rDh7Ov3zU02CJRAHdjPRv2nyQjPjigk3UbXG427M8jWHPirK9r9xgFN/X19TQotZ4el7O/g4baWlbvzqWoPJbDRbUcKa7hSFEtR4pqKK11dvjaA6JDGJoYzrDEcIYmhDE0MZz0hDAiQlrfYhV3A5/uK6A+XEHB+7bpzLs9ou0QHR/MsFg7xyJUrps4ALvdzu5Tlew6VcmeU1VU1rvYcryULcdLPc9Ljgph3MAoxg+MYtygKEYnR3jVc7bxcDEfbz9JlMNOXIiKq6GO5gGshgbfryEjzByXxsZGwsLCePfdd7nuuus85d/97ncpLy/nww8/bPOclJQUHnnkER5++GFP2S9/+Us++OADdu3a1e7rNDQ00NBwNoKurKxk8ODBPquHpPegBIdhc0SihkagOqJQHZEoNjuNhcdwFp1oPc+gF7Pp7jCmD7Lz0tZGFmfWm60j8ZIhMQrXZARxTYadi1Nt2FsMB52u0vj4oIuPclysOeainWkUwqOGxxAcn0JQQtNX/GCCElKwhXWcVu4sL8BZnIuzJA9n8QmcxXk4S/LQnaJ97hXscQMJGZBByICRhAzIICgxFUVtHaTobheNhUdpyM+hMT+HhvwDuMoLevSKfXKOS3FxMW63m379+rUq79evHwcOHGj3OQUFBe0eX1DQccM//fTTLFmy5PyFJWKgqKgh4aieACQSW+jZx2poR+URbf7IW6I11tGQf5DG/GwaTh2gIT8Hrd68Zbf9xTUZdqYPslPr1PnNho67zCXW41i5zgubG3lhcyOxoXDVcDvXZgRx5TA7/SNV7psczH2Tg6lp1Fl1xMWHOS5WHHJR3GDHHpWIYrODooKioCiqsRZN82NFBVVt/RgFVBUUG4pqPA9Fbf94RTH+vjyPm8ubjlGbHyvGkJfnuU3nbHn8Oc+1RSUSlDAYm6P9m6iua7jKC5qCklwjUCnOxVl6Et3ZWz7jOq7Sk7hKT1Kzdw0ASlAowcnDCRkwoimYGYktIpaQ/iMI6T8CJl8NgLu2olUg03D6IHpj+z1c/kKYwCVQPPHEEzzyyCOen5t7XI4dO+bJKlJVFZvNhtvtbrUPQ3O5y+WiZUeWzWZDVdUOy53O1l2QzbuXulwur8qDgoLQNK3VBGJN0zh+/Djp6emtjlUUBbvd3qG72XXSNJ3T5bWUFZ5iTMbwVl3Nze7n1lVRFHRFpaymgfLaRirqXFTWu6hscFPV4Ka8ppHyOicVdS4q6pt+V++ivM5JVf35Tbp2BKlEhNhodGkE2xQcqpv8Gh1XsANH2ngcaeM9xw6JdzBuYBRjB0QwYWAk6Qlh2FS1wzoF8n1yu90cPXqUESNGeM7TknbfP81N1LKroDgHdcYPyP7JT1u5+6tOpysaeXplDlUNLmqdGvX1DThCjUyZlDgHD8xOY1BsqGfioS/+nvxRJ5fLxdGjR0lPTyc4ODjg14iO6vT25iPUHd7ITG0Lwys2EkMx148K4vpRQbh1hR36CFa7J7FGm8QRfQB0Y8jDSihAVKiN2LAgYh024sLsRIeo1NS7+N7cyYxIjvbLde9gYRVvbsojLMR4zZYYw0D6OUv7K+hAbGMJ5UExRhDmKVcBrekIWpWfLqshItTGXRelEx8R3O1rhKqqnKlysiO3lN2nqtiTX032mWoIiyZs2FTChp1NiokIVhkUE0q/yCD6RdiJDbOjNl2762prWHLrJV29Hd1CmMAlISEBm83GmTNnWpWfOXOG5OTkdp+TnJzcreMBQkJCCAlpmy4YGRkpVDq00+kkLy+PsWPHCjNPxOXWeGtLHpsPFzLGfpq9dTEMSYqiotZJeV0j5bVOIwBp+XOtk4o6Z6drIHhDZIid6LAgYsKCiHEEG48d7f0c3FQW5Mmk0HWdtQcKWbU3n5nBuWx1pzItPYmqBhc7csvYkVvG0aIajpXUcaykjg93n/G85oSmGf6TU2OZMDgmIOmK7eF0OsnPz2fChAnef152vQ3FORAaTeiljxHqiPGpk67rnK6oZ39+PfvyK9l/uoL9pyvJK23nv7sqo6v+QFE9q3LKsKsKqfFhpCdGMDQxwphzkBjBsMQIU1N1W9KjNvcDFbVOjpQ2Z8RU8/nBak6VDec5ZzpwM2OU48y3bWe+up0x6gkuVHK4UM3hSd7ihJ7EBm0CX+pjySKDOnsMiqLgcmtEhwURGRKEqirYVCN7R1WMDQZtioKiYDxWFRRFwdb0c8vjVFVBVcCmGI+N75z9vedYKKxqYM/JCuIjjLk1CsZxitLUEYOCikYqRWixKcSEh2I/J6um3unGXVlPfEwM4eH+WZDuwuhoTtWorNxzmviYcK8yexTdTbJeS51jELrS9ZyT6gYX7iCNqy9MZeig+B67RkXB8IHx3Nz0c4PLzf78SnbmlrMzr5ztJ0rJL6+nulHjQGEtBwqN44JtKv2iQkiODiXe7vshc2ECl+DgYCZPnsyaNWs8c1w0TWPNmjUsXry43efMmDGDNWvWtJrjsnr1ambMmBEA476H061RVe+iss5JVb2LqnonlfVOo4ejqayy3tn6mAYnlXVNx9a5cDdF/J9gh12HuvX6igJRoUGewCI6LLhF8HHOz2FBRDuCiQ0zApDzSQtUFIV5I5MYGu9g16ZcfjB3OP1jjYmit00zVjAtq2lkZ14ZO06UsyO3jKy8cqoaXHxxqJgvDhV7/IclRjCpKZCZlBpDekLrVFTL4GqEdf9nPL7oh+CIPb/TuTWOFNUYwUl+ZVOgUkl5BxMiI0LsRITYSY0LZZithCPueI6X1qMoUF7rpM7p5khRDUeKalhN639e4sODjWAmKZz0hLPfB8U62tzIegu6rlNS08ihM9UcLqzicKERpBwqrKaok7TdsGA7ihrBIfs4Khxj2W0rYJyeTaJWSkLVflKVQr5tW8W3WYVTDeFI3CUcjZ3FZ67x3DTrAmYOTQhYHY8UVfOnNYdIjAghPKT9W5uiuxlSV8gxRwi60va9rqx3EhFiJybcf4GkoijMH92Po0XG+i7DW2Tg+IIGp5u80lpmDo3nwjTfZnaF2G1MTIllYorx955fXsdvPtmPS9MorXFSUNmUju3WyCurI6+sDs0Pk3OFCVwAHnnkEb773e8yZcoUpk6dyvPPP09NTY0ny+g73/kOAwcO5Omnnwbghz/8IZdccgl/+MMfWLhwIW+//Tbbtm3jlVdeMbMaAaE5Ndfbude6rlPd4GoKOJoDjBZBRVNZ88/tBSF1Tt+sdaMAYXYduz2IIYkRxIYZPR3RLYIQT89Hi2AkMjTIpxeAbjkrCgNjHewCEiLarlsQGx7MvJH9mDfSmHPlcmvknKliR245O0+UsT23jBMltZ6byfJteQBEhdo9PTKTUmIZPzjaGnvD7HgDyk9AeBJM+163nlrT4OJAQVNw0hSgHCiootHV9j8zm6owPCmC0f2jGD2g6at/FEeLa3hrcy51DY1MjdQpqwgio380d89KZ1Csg4LKeo4UVXO0qIYjRdWex6cr6impaaSkpnU2BRj/JaYlhHmCmaGJEaQnRpCeGO6z1WA1TedwUTU7TpRxsqSK4cDKvQVMSI1ncNz5/4ev6zoFlfVNAYrxWWoOVMo6zYox0naHJUYQFmxjR24Zw5MiiAkLZkTRYUYUr6c4bBgoCuXKaA7Hz6Rf0Xpi604QV3uc2PpcgrQGRhavYmTxKq7Ahts5Dc4sgBFXGevM+Jkh8eGe9VjSE7ufbqzrOqU1jVw+up/fV/+NCLGzaFoqr288xqHCKoYlRvgkaK5rdHO8pIaJKTHcNGWw36+HqqIQGmwjLszBqP5GOKHpOiXVjZ51ZU6daSTPx68rVOBy8803U1RUxP/8z/9QUFDAhAkTWLlypWcCbm5ubquFnGbOnMmyZcv4+c9/zpNPPsnw4cP54IMPerSGi0iLW9U2unj9q+McL3Gw4f19jEiO8gQllecEI0ZwYgy1+Gr5kfBgG5GhQUQ57Mb3UHurnyND7UQ1f3cYv48KDSIixE5WbhlfHi5kqK2MSRPHMSGl592cgUZVVVJSUrz6rNhtKmMGRDNmQDTfnp4KQHF1AztzjR6Z7SfK2H2ynMp6F58fLOLzg0WA0SuT0S+SSU2BzKSUGIYkhJ932ml33Gmsgc9/Zzy+5DEI7jgNubCynn2nzwYo+/MrOV5SQ3vxdHiwzROYGN+jGd6v/XTMSSnBRITY2XqsmKqSGuaPTmbasEQGNC06NiDGwYAYB7OHJ7Z6Xk2Di2PFTcFMYbWR7lpYzbHiGhpcGgfPVHPwTDXsa/16iZFGumtzMNP8eGCMw+seMadb48OsU3xxqJgGl0ZUsEqELYJdewv44kgpC8cN4OLhCV69l5qmc7KsjsNFZ4d4Djd9dTRsqigwODaM4UkRDOsXwfCkSIYlGXVpGQw73RrPrT5IfnkdMWHB5EeNY1DFdmLqT1IeOggFndD6AjQliDJHKgo6x2Jnkhs7nZTyLQwq+pwBjcexndwIJzfCqp9D/DAYcaWxZszg6WDz/a1HVRWmpceTXVCFy611EAgoVNqiaW9eTnWDi7Bgm6c3wd8kR4dy58whvPn1cQ6dqSY5OpTYsI4Wa+vYG4yg60xVAxW1Ti5Mi+OWqYPbpGL7A0ewjWCbSr3T7enlUhWFxMgQEiNDGDswmoYUB7t9/LrCpEObhYh7FW0/UcZ9/9xGSU1jt58bZFNaBRWRoXYiQ1oGIa1/F9UiEIlyGN335/ufQ12jG1U1uiX7Mk63xoHTVWw/UcqOpoDmZFnb+R2xYUFGEJNqrIo5flBMh13lPuGLPxgLzsWkwuJtYA/GrekcL6lpNcyzP7+yw8W5+kWFMLp/FGMGRHuClZS4MNOGxTRN51R5XVPvTA1HW/TSdLYCakjTomvN82iGJkWQnmD00pz7Hny6t4APsk6RFBlCTIsblK7rnKlsoMHl5o6LhjBhcIzndy63xonS2jZDPEeKqjtcOt6mKqTFh3kCk+H9IpoCFO/W5AD4/GARb205QWpcOKFBNvpV7WPMmY8Ic5ZSb4/CrQYR5K4j2F1LReggdvW/icrQgZTXGnPPHpxkZ1jZV3Dwv3D8K9Ba9PaERsOwpl2th10GPpwbVd3g4sU1h8grrWVYUoTXAb3LrXG4sJrJabHcMys9oJ/Dynonn+4t4KvDxbg0neSoUK//fnVdp7LexZnKeqIcQcwflcTsEYkBvXa+sfE4Xx8t6XDRv/qaap68frLcqyiQNAcupaWlxMYGJhI/X3754V7e2HQCuwoDoh2MHRxDfHhwi0Cjbe9HVFMwEmLv3pbp/sDtdrN7927GjRuHzSZO8BII78LKek8Qs+NEGbtPVbQZYrGpCiOTI8/OlUmJZXCco9P31Wv3ujL0F8aj1Fewcdz/kalezL78Sg6crmp3qFBVID3x7FDPmAFRjOofRUKEd/vldEUg2ryy3snRFsHMkcIajhZXc7y4lkZ3xxMP+0eHkt6iZ2br8VJCg1TSE4wbqqJrxDcWUBKcjFM3NuGLdgQxJCGcI0U1HCqs4lhxDU53+5foYJtKemK4EZwkRXoClLT48E53C/aGeqebf2w8zo4TZaQnhBMSZCOyoYD+lbvpV7WPisiRRNYcIT9qPKcjx1IfFENVvZP88nrmj07i+omDzt786yvhyBpj5d5Dq6CuxRBd8+q9zb0x8UPPyxvgWHENr391jJLqRtITwlFVBbu7nqiG09i1eoIVqFbCqAwdiKbaaXRpHC2uYVhSOPfMSic23PdL1HeFruvsy6/ks+wzHCsyev+iHUGEh9gID7ZjU/SznxUNahrdTb3oxpyckclRXDEmmZR4/+5w3R57T1Xw8udHGBjjaDcwbqiu5IkbLpSBSyBpDlyKi4uJj7f+sMW6nELufH0rAN8e5ub+6+cyKN5/O576A6fTSWZmJgsWLBAmIwrM8W50aew/Xcn2E0b20s4TZeRXtF0MKyEiuNVcmXGDoj0ZUfvyK8nJL8een8X4GXNJSzp7cSmtaWzqRTEyeqYffZFbG/9DjjaIqxp/i8bZG2RokMrIZCM4ae5FGZkcdXZzPj9g5mfF5dY4WVbH0WIjmGk5p6az3k67qhAbHkysw06Is4qTDSGU1zrp6ELsCLI1BScRDG36PrxfJIP9PJm4otbJ0s0nyDpZTkJ4CPHhwaiqgqI5GVJ/mGOhw9FVOy63RmFVA9UNLi4ensiNkwd1HDhpbsjbYvTE5Kw0stJaEj8cMq405sUMntbjIaXDhVW8tSWXqsJcLtAPM9q5lwhnCToqB1MWMfTkciqDEthtG0uObShpgwZx67QUkiLNXe3arekcLapm+4kyDhRUUlXvorbRjQ2N+ZH5rK4agKaoRITYiXYEMX5QDOMHxzAotvN/TPyJ063x/GcHOVZcw7DEtr1cDdUVPHHD1L65AJ2ka06W1fKj5VkA3DZ1EFNsx4Vadl7SfYLtKhMGxzBhcAx3Y+w1c7qizpO9tCO3jL2nKiiubmT1/jOs3m9k2NhVhdEDohgcG0ZxdQNhdpgVAUs+2U9KfAQny+rYl19JQeXZICiRMn4b8jEo8Df7bVyUmtTUixLN6P5RDEkIN21ytBnYbSppCeGkJYQzb2Tr35XXNjZlNRnBzLbjpWSfrqTO6cal6RRVNTRl86iAMYwSbFMJD7ExLT2eySmxDOtnpG93Zx6NL4kOC+K7M9NI2nua7SfKOFRYTWiQSmSIyhAVSmqclNXX49Z0+kWFcsWYfszJSOo8mFJtkDrD+Jr/Kyg9agQwB/8LJzZCySHYeAg2vmhkqg2bbwQywy4zhpi8ZFhCGA8OPERl4YdUVxZTpoVRbIvHbTPmQJ10RhNXf4q59hN8I34gsUNuJzxyxPk22XljUxWG94tkeL9IXG6N4upGCqvqqa5roGh/PrdNSyEm3EFSVAhxYcGWyDgMsqncMGkQr315jOMlNaTFn/+cu66QgUsvocHl5gdLd1Be62TcoGievGoka1YdN1tLYgL9ox0sHOdg4bj+gNHtvy+/whPMbD9RRmFVA7tPVrD7ZIXneeuwAyVNX2cZkhDO6P5RfK/mfRz5jTj7T+YP9z5hrEgqaZeYsGAmpwYzOdUYXt6VV87fNhxlcKyDukY3ZbWNlNU0kOQugpiBxEY4cLs1qhpc/PiKjFa7/5pJeIidmyYP5tKR/dh9qoItx0qorDXm/CgKjEyOZFp6PGMGRBEW3IPbSVw6zPi+8VVfAYfXwMHmIaUy2PNv40u1Nw0pXWUEMnHpHZ9T02Dvf4g5tIKYhBgaBw+lsKqB8jon9S6FU8DApHiSwpOID7NhrzwJu/8JqhuGzO5ZQ/kBu00lOTqU5OhQo2dxP1yYFmfJXuihiRHcNi2Ft7fkcfBMFf2iQol2BPktgJGBi5dYPavoqRXZ7GoaI3/ptkk4gu1kZGRY3rs9VFUV0t2q3qFBNianxnl269V1YyLqjtxy3th4jMOFNVTVO1EwblQXDIzmyguSjaGe/lFGdkLpMfjz+wAEXf6/xpLrFsCqbX4uw/tFkBQZQkl1IwNjHcY8ioQwYp0aZUHhoKgcKqxm3KBoki3YSxobHswlIxK5eHgC9Y1ODh0K4ooRwwkJsvvu5hQaDRfcYHy5XXByC+T81whkig8au1wf2wCfPgEJGWeHlAZd2HpI6eh643nhSRAWRzAwKDaMQbHg1hUiGooYHhmBTWkanIsbAuV5xoKKYfGW3N1chM/5mAHR3DPbzmf7z5B9upKCinrCQ+zojd1PEukKOcelC0TIKvow6xQ/fDsLgNfvuJC5I5PMFZIIw5ZjpSzbfII6pxtNh8SIYO69eChDEs5JcX7vPti9HNLnwnc+MMVVdNZmn+HdHaeICwsiLvzszsnNgSTAnRcN4YKB3g+J9BlKjhgBTE7TkJLeYiK4IxaGX25M8E29CL56HmrLIDbV+/PrOhQfgEFTYcYPjO4kSY/QdZ38inp2nijjQEEVJWXl/PbW6XJybiBpDlxKSkqIi/PtKoS+4NCZKq596StqG90snjuMH1+RARh7Y2zZsoWpU6d69ssQBVHdRfTWdZ3tJ8rYc7KMqKoTXDB+EhkDYlofdGYf/PUiQId718HASWaototIbe7WdDL3nGZ9TiHVDS7CgxQuCC5mW00s0eGhXDthINPTrZ8AYHqb15XD4c+ahpRWQ3352d+pdiOQSRoDiSPbpFq7dIUttYOZGpaHXTnn1ldXDg2VMPcJiEnxcyW6h+ltfh6UlJSQkJAgJ+eagRXju5oGFw8s3UFto5uLhsXzo/lnJ5fpuk5RUZElvbtCVHcRvRVFYUpaHOMHRpKZuZf0xHYWk1v7G0CHUddYKmgBsdrcpip8Y1x/xg2KJiuvnFOl1cRXneS6CQOZkBZvekaLt5je5o4YGHuT8eV2Qd7XZ4eUSg5DTREcW298hSUYi9/FD4OoAejYKXJHoKPAuXlcodFQeRJO7bBc4GJ6m1sMGbgIiq7rPP7eHg4XVtMvKoQXbpnYpzI6JAEibwvkZBo70s77udk2wqMoCqnx4aTGhzelch9g7sgkS064FAKbHdJmGV/zfwXv3w9lx6HqDFTkQW2x8ZX3NQQ5sMUOIymiASKC2y5Cqyhgd0B5rhk1kXQDGbgIyptfn+DjXfnYVYWXbpvkswW9JBIPum6skAsw/jZIzDDXRyLpDFcDBEdA8ngYmgDOeig7avTClB4BZx1q4R5mFO5BPx0Pgy80hpRsLYJG1QbOdnYfl1gKGbh4iZVWcM3KK+fXn+wH4PGrRjKlnR1AbTYbEyZMsJS3t4jqLqo3dOB+ZC0c/wJswTDncfPkOqHXtbkAWNbbFmz0DOpNqxkHhULSaONLc0PlSfSig+hn9qLWlRhDS8c2wICJMGCSseeWrhnPsxiWbXMv8IeznJzbBVbLKiqraeQbL37JqfI6rrogmb8smmT6Ev2SXoiuwytz4HQWTHsArvqt2UYSSdes/y0UHzLmtHSEqwEKdsHJbcZkXDC2Hki+AEJjYfytMOGWwPj2AfxxD7VuUrjFcLna33E1kGiazsPLszhVXseQhHB+d9O4DoMWl8vF2rVrLeHdXUR1F9Ub2nHf/6ERtASFw+xHTXXrjF7V5oJgae/UmeBuBK19N5eusLZ+FK6B02Da92DUtRDZ30ivPr3LmNC7802jJ8ZC/9Nbus27wB/OMnDxEit0TP153WE+P1hEaJDKXxZNarUV/bnouk5VVZUlvLuLqO6iesM57m5XUyYRMHMxRCSaK9cJvabNBcLS3v0nQEQSVBe1+2sdhSot1MgqUlRIGgUTvwMTFkHkAOOgE1/CG1fD3y6GXcvB7Wz3XIHE0m3eBf5wloGLIHxxqIjnPjsIwG+uG8uo/uYPW0l6KbveMvaMccTBjMVm20gk3hMaBWmzob4UGqu9e46igD3U6K256XW48B4ju6hgN7x/Hzw/Dr583ljnJVBobqgqgPydxl5O2R8b5dkfG2vYFOyFmhJL9QoFEjk5VwBOV9Txw7ez0HW45cLB3DR5kNlKkt6Kq96YJwAw+xHjRiCRiETGAuOmf/wLiE7p+jNcfcbYF2nM9TD6WmPLgbk/g22vwZZXoCofPvslfP47mPRtmP4AxKb5x72uzAhWjn8FlfngrGkKTuwQel1TAOMy5uSERBh7NqVeBMljITjMP04WRE7O7YLmiUVlZWXExMQE/PUbXRq3vLKJHbnljBkQxX8emEloUNeztDVNo7i4mISEBEvvb9EeorqL6g0t3A+/g7rqSaPb/KEdEGSNzf46ole0uWDuQng764xhnuMbjKHPiH7giEVDodgdToJSiVrXtMZLcASM/AZkXGWkQ7fE1QB73oVNL0HhPqNMUWHU1TDjQSOl2le+hz6Do2uNYa4gh7FvUnAEqDY0HcPbVoOqYAxfNVYbi+1pbogeaARsqTPb1sFkysvLiY2NlUv+BxKzs4p+9fF+XvvqGJGhdlY8OJuU+L4TVUsCTEMVvDAeakvg6hdg8h1mG0kkPUdzw5m9kPs1nN5tZBApStOCubqxqu7gqcYmjfFDO9+fSNeN5QE2/dn43szgacZw6siFPQ8Yig/D3v9AwR5jeDYiqXvncjcavTPuBsNnzA0Q2a9nLn5AZhWZiNMZ+AlaK3af5rWvjgHwx29N6FbQ4nQ6WbFihSne54uo7qJ6g+Ge88bDRtASNxQm3G62kleI3uYiugvjrdqg/3iYdj/M+xlM+x7O8d9mRdiNOKc+AJf+AibcCgnDut5UUVFg2KXw7ffhgU3G34ctGPI2w7+/DS9Ogs1/gwYv59U0k7sZNr5g7AcWPwyi+rcbtDh1lRWVGTj1dm7ZtmBj6CpyIBz/Er56wdiU0iL443MiAxeLcqSomsfe3QXA/ZekM3909yNoEVPnmhHVXVRvaktIL/jEeDzvZ8ZS6oIgbJsjrrtw3lEDIO0iSJ+DS8PoZQnr4aa5/UbDdS/Bw3th9o+NTR3LjsN/H4PnRsNn/2v0gHRF7mbY/g9wNRobQto7X/3cRRe9MCERxmJ7laeMIMpCwYuvkYGLBaltdPH9f+2gptHNtCFx/ORyudS6xI/oOupnvyRIq0fvNxZGX2+2kURifSL7Gb02P9oPC/9g9FTWV8CXzxmZSO/dbwz/tEfRQdj5L2Ol3ti0rnt8vEVRIWGEMeF422tG5lEvRAYuFkPXdX7+/l5yzlSRGBnCi7dNxG6Tb5PEj+R+jbr33wC4ZzwEVp1wKZFYkeAwI4V68Ta4ZRmkzATNCbvfhpdnwRvXwKHVZ1OXG2uNOS0NlRCT6nsfRYX44UYv0P4PQdN8/xomIyfndkHzxKLy8nKio6P9/nrLNufy5Pt7sKkKS++ZxvT0+B6dp3nBosjISOG2BBDVXVRvvn4ZVv4UtyMB9aEdKA7/f859hbBtjrjuonpDAN1PbTcykfZ9YKzKC8Zw0PTvQ1AYZH8IccO6HB466w1VWgiRaoP3nTP1FVBTaKwQPHhqj6rhCyoqKoiJiZGTc3sre05W8L8fGSl3P7kio8dBSzMOh7VTWTtDVHchvZu7sy+4Qch1W4Rs8yZEdRfVGwLkPnAy3PQa/DDLyDoKjoSiA/DxQ/DRYijPM7KeuoFD7eYk19BoQIGDq4yU8F6EDFy8xN+T0SpqnTywdDuNbo3LRvXj/ovTz+t8LpeLzMxM8SbRIa67kN7NaZ7A5tJosdwRtM2bENVdVG8wwT0mBa54Ch7ZD5c/BeEJxiKPp7Ng81+MHapru56H4kIls2okru7esqMGQNlRI2gyCX+0tTipA70YTdN55N9ZnCyrY3Ccgz98a7xwXbASQSk+CFX56LYQSiLkJHCJxC+ERhlDNjVFRjZR+TFjdd/TWcZX3FBjOCc6xXcTdcEYlnI7IW+Lsft1L0EGLhbg5Q1HWHOgkGC7yl8XTSba0fHmiRKJT2nqbdFTZqCpwSbLSCS9mOoCI9tn4CQYcjFU5MHJLVByGEqPGF8R/WDQVGM+jK9WwHXEQWG2EcDYese9RQYuJrPxSDHPfpoDwK+uGcMFA8WZGCnpBTQHLkMugTKTXSSS3kzVGSOjKHqw0asSk2J81ZbCqa3GXLPqM3DgYzi2HgZOMRbQs4ee3+sGhxvDUdVnILp37HMns4q6wJ9ZRWcq61n4py8orm7kxkmDePab43w2RKTrOi6XC7vdLtywk6juwnm7GuCZNHDWot//Ba6EUeK4NyFcm7dAVHdRvcFk9wMrYNfbxiJx7eGsNTZYPLXD2FwRjFVxk8ehD5yCKzQOO1r3R5J0DYpy4KIfwqDJ51WFniCzinoRTrfGg8t2UlzdyMjkSH5z3QU+/0Oqq6vz6fkCiajuQnnnbTEuluFJ0G+MWO4tENUbxHUX1RtMdO9qO4CgMGOn5+kPGBsmhica+xCd2gZb/masyVLXg25Rpek23xwM9QJk4OIlvp4Z/ftPc9hyvJSIEDt/WTQJR7Bvd/R0uVysW7dO2Jn/IroL5928WVz6HFxuTSz3JoRr8xaI6i6qN5js7naeDSI6Q7VD8jiYfBeM/RbEDkFBJ6h4H2x/DU5uO7uYnbcodDv92lfIrKJewsq9Bbyy4SgAz35zHOmJESYbSfokR9cZ34fOM9dDIukL2IONYRtvURSIS4e4dJxVxZQf/IrE6mw48pmR3pyxoHv7Lflqsq8FkD0uAeZ4cQ0/ecfYPPGeWUO48oL+JhtJ+iQ1JZCfZTweOtdUFYmkTxAS2fPnRiSxcdhPcQ+70pj3UnnS6H3J29x1MKS5jR6a83l9iyEDlwBS73TzwNIdVDW4mJIay0+vGunX17Pbxe1QE9VdGO9j6wHdmCgYmQwI5H4OonqDuO6ieoOJ7k1/Zz0dsrErOtqASTDlbmNjRs1l9JrufBNqijt+YmMNBEdARHKPXteKyKyiLmjOKvLFjOjH3t3Fv7edJD48mBUPzSY5+jzT3CSSnvLhYuOCN2OxsbKnRCLxL1UF8NkSYyn+0PPMUNV1KNhtzFNzN4BiMyb2Dp7WdkioMt9Iib78N2ALfNDmy3toM7LHxUu089xh899b8/j3tpOoCvzp1ol+D1o0TaOwsPC8vc1AVHdhvHUdjjTPbzGGiYRxPwdRvUFcd1G9wWT38ESITTVWz+0mmg6FrnC05m4GRTHWeLnwbmPVXd0NxzfAzn9CdWHrJ9eXQfJYU4IWOP97Z3vIwMVL3O6ez8jel1/BLz7cC8Aj80dw0bAEX2l1iNvtZtOmTeflbRaiugvjXXzIGCO3BUPKTEAg93MQ1RvEdRfVG0x2V22QOtNIcda6l2njRmVTbSruc2/ZIVFwwU0w8hvGQnXVZ2DHP+D4F8aQVEMV2B2m7g7tj7YWd6BSECrrnXx/6Q4aXBpzMxL5/pxhZitJ+jrN2UQpMyA4zFwXiaQv0X+CMdel6rSxgq4vUBTodwHEpMGhT6HkEJz4ytiHLGkMpM0yemV6EbLHxY/ous6P/72LEyW1DIxx8NzNE1BVsVaalPRCmtdvkWnQEklgCY2C4VcYi9E5a3177pAIGHMDjLoWghzGkNSxz6H8BGhO376WycjAxUt6sqrt3784xqr9Zwi2qfxl0SRiwgK3iZ2iKERGRgq3JDeI6y6Et6sRjn1hPG6RBi2EezuI6g3iuovqDRZxT78EBk6EsmNeLySnoBOp1qPQxfGKAkmjYNIdENkf0I1J+C/PNhauMwF/tLXMKuqCns6I3nKslFtf/Rq3pvPr6y7g29NT/WgpkXjJ8a/gHwsgLAF+fAhU+b+LRBJwyvNg45+M9ZTih9H9DYg6QXMZexMljYSE4fDpz6Gm0Fi1d8YPYO7PjB6ZACGzikykOzOjC6vqWbxsB25N59oJA7h9WoofzdpH0zROnDgh7Mx/Ed2F8PYME81tFbQI4d4OonqDuO6ieoOF3GMGw+Q7wBFtzEnpYhE5TYcTjTFns4o6wu00gpb4oXDhPTDuZvjBZuO7rsHGF+GvF8GJTT6rSlfIrCIT8XZmtMut8cO3siisamB4UgRP3zDWlG5Jt9tNVlaWsDP/RXQXwtuzP1Hr1XKFcG8HUb1BXHdRvcFi7v3GwIX3QkQSFGZDY8ebMLpRyaof0DarqCW1JVDc1NMy7XtnF7wLi4MbXoFblxvDR6VH4PWr4L8/NRan8zP+aGsZuPiYP64+yKajJYQF2/jr7ZMJC5aJWxKLUFsK+TuNx3KZf4nEfPqNhlk/MtKkK05C6TFw1XfvHI3VRgZRQ6WRFj3zIYhqZyuZjCvh+1/DxNsBHTa/DH+dCcc2+KQqgUTeVX3Imuwz/GX9EQCeuXEcw5Lk5okSC3Hsc0CHxFEQNcBsG4lEAkbPyLT7jUXiDq2GsuNGuSPOyBSynzMfRdegsRYaq6CuDOwhkDgSMq4yztFZD78jBq59CcZcDx/90HitN66GKXfB/F8Js5+RDFy8pKvhnrzSWn60PAuAO2amcfV4c28MiqKQmJgo7Mx/Ed0t791yfss5WN69A0T1BnHdRfUGC7urNhgy21go7sw+yP3amPtSVQCuehTsJAbHohQdANzG5NqQKBg233hOwvDu7f487DL4/ib47Jew7TXj69BquPoFGHapT6sms4pMwJsZ0fVONze9vJG9pyqZMDiGf98/g2C7HIWTWAhdh+fHQUUuLHoXhs8320gikXSGs84IXKrPGHNRdM0ITkKijF6a8CSw+2CJjaOfw0cPGuu9AEz8trGvkSPm/M+NzCoylc4mGP3qk/3sPVVJbFgQLy2aZImgxe12c+DAAWtMQusmorpb2rvkiBG02IKN8fRzsLR7J4jqDeK6i+oNgrkHOSBuCKRMxz1kDgfcg3GnXQKDpkD0IN8ELWCsK/PARph6v/HzzjfhLzPg4Kc+Ob2cnGsiHaV0vbfjJMs256Io8PwtExkYE7j8+M7QNI2cnBzz0/56gKjulvZuHiYaPM3YKfYcLO3eCaJ6g7juonqDuO5+9w6JgAW/gzv/a2wPUJUPy74F791vTOrvDpX5xiauO/4Fa36FtuY3PteVc1zOg5yCKp58fw8AD80bziUjEk02kkg6oHl/IrnMv0Qi6YjUmfC9L2HdU/D1X2D328a1Y+EfYdQ3On9u0UE4uh5O74L6CmPBu+BwcPp+josMXHpIVb2TB/61nXqnxuzhCTx06XCzlSSS9nE7z6Y8ysBFIpF0RnAYXPEUjL4OPvyBsTbM8kXGPkgLfg/hCa2Pb6w1hpUOrTJSsyOSIWrg2eym6kafK8qhIi9RW6wyqus6j/9nD0eLa+gfHcrzN0/AZrHNE1VVJSUlpZW3KIjqblnvk1uNC0pYPCSPa/cQy7p3gajeIK67qN4grrsp3oMvhPs3wKxHQLHBvvfgpWmw972zeyzVlRvrwex9F+yhxlILYXGtUrLVrvZX6gEyq6gL2psR/dqXx/jVJ/uxqwrL75/B5NRYky0lkk5Y+xRs+B1ccCPc9JrZNhKJRDTyd8IHP4DCfcbPo66Gy5bA/g/h1HZjvyV7aLtPraypJ/rqX8msIjNonhm9/UQZ/5eZDcDPFo6ybNDidrvZuXOnGLPnz0FUd8t6e9Zv6XiYyLLuXSCqN4jrLqo3iOtuuveAiXDferjkcVDtkP2xseP0/g+NybwdBC0Abt33oxHCBC6lpaUsWrSIqKgoYmJiuPvuu6mu7nhvB4BXXnmFOXPmEBUVhaIolJeX9/j1NU2jpLqBxct24NJ0Fo7rzx0z03p8Pn+jaRq5ubnCzZ4Hcd0t6V1XBvk7jMfpbReea8aS7l4gqjeI6y6qN4jrbglvezDMfcIIYBKGg7MGTmfBgU+goarDp2n04cBl0aJF7Nu3j9WrV/PJJ5+wYcMG7rvvvk6fU1tby5VXXsmTTz553q/v1nQeXp7F6Yp60hPDeebGcdZbfVEiOZdjG4yFqxIyIHqg2TYSiUR0ksbAmBshabQx96X0CGz9OxTsPjv3xc8IkVWUnZ3NypUr2bp1K1OmTAHgxRdfZMGCBTz77LMMGND+8voPP/wwAOvXrz9vh1c2HOOLQ8U4gmy8fPtkIkKEaDpJX8eLYSKJRCLxmpJDUHoU0udBygzIyYSq08b3wmwYcSWERvtVQYi776ZNm4iJifEELQCXXXYZqqqyefNmrr/+ep+9VkNDAw0NDZ6fKysrAXj1y+MoIWH8+ppRDE0IA4xxx5Zdd6qqYrPZcLlctJzzbLPZUFW1w3Kn09nKwW433haXy+VVeVBQEJqmtRr/1DSNjIwMgFbnVxQFu93eobsV6uR2uzt1P7euVqmT2+1m2LBhKIqCrutevU9+rZOuYz+yFgVwp12M1sL/3Dp15d6dz14g36dmb7fb7de/J3/UqT33QF4jelonXdc93ufWyezrXld16sjdCte9zuqkqiojRoywxnXv9F5w1eEKjoLgKJjwXdSTW1CPf45Sdgx92/9DGzIPrf9EUBS/ZBUJEbgUFBSQlJTUqsxutxMXF0dBQYFPX+vpp59myZIlbcp1YFY/jaD8LHbbS5k4cSK7d+8mNzfXc0xGRgYjR45ky5YtFBUVeconTJhAamoqGzZsoKrq7FjgjBkzSEpKYtWqVa0+wHPnzsXhcJCZmdnKYcGCBdTV1bFu3TpPmd1uZ+HChRQXF7Np0yZPeWRkJPPmzePEiRNkZWV5yhMTE5k5cyaHDh0iJyfHU56SkmK5OhUWFrZbp7y8PEvXacSIEVRVVXXrffJHncIbznBZeS6oQXx5Uqf84FnPjuo0ePBgn332Avk+HT58OCB/T/6o0+HDh029RnS3Tvv27SM3N5fDhw93+30yu05Hjx7l8OHDHncrXvc6qlNYWBiffnp2GX7TrnsRuTjsUWRWjTxboZjRLJg8HOVgJvbKPGyHV1JakMuelO8yJawWX2NqOvTjjz/OM8880+kx2dnZvPfee7zxxhut3hyApKQklixZwgMPPNDpOdavX8/cuXMpKysjJiam02Pb63EZPHgws3/9MZmPXEZIkE2IKN3tdrNjxw6mTJnSai6OVXonOit3uVzs3LmzQ3er9ri4XC62b9/OtGnTsNvtpvdOqNtew/bpY5A2G9ftH3Rap67cze6d6Oh9cjqdbN++ncmTJxMSEmK53onO6tSeu5V6Jzpyb2hoYOvWrUyePBm73W6p615XderI3QrXvc7qBLB582YmTZrkea4p173GOuxr/gcUFVd4v9Z1QgNdQ8vfgXpsPYrmQleDKE++iLj7P/JpOrSpPS6PPvood9xxR6fHpKenk5ycTGFhYatyl8tFaWkpycnJPnUKCQkhJCSkTfm3pw8mIqx1ypfNZsNma7uVePMHy9vyoKCg8y5XVbXN4kRFRUUoitLu8R25W6VOnbm3V1ewRp1KSkoAuu3ulzod/9z4nj7Hqzp15X7u8V25B+J90nWdkpISz02oI8fulgeiTu25B/oa0Vl5R+6qqnq8W76OVa57XZW3526V615H7k6nk+Li4jbenbn7pU6NFaA1QkgUQUo7GU6Kim3QFIgfCjmZKBV52I6ta3vceWJq4JKYmEhiYtf7+8yYMYPy8nLPfycAa9euRdM0pk2b5m9NAC4eJvchkgiE2wnHvzAey4m5EonEF3h6ZLrIqHXEwvjb4PRO9P1rfa4hRDr0qFGjuPLKK7n33nvZsmULX331FYsXL+aWW27xZBSdOnXKM37XTEFBAVlZWZ7xzD179pCVlUVpaTd3uwQSItv2wkgkluXUdmioBEcc9B9vto1EIukN2EOMBeg0Z9fHKgoMmIRr4h0+1xAicAFYunQpI0eO5NJLL2XBggXMmjWLV155xfN7p9NJTk4OtbVnJwK9/PLLTJw4kXvvvReAiy++mIkTJ/LRRx91+/Xb63KzMjabjQkTJgjnDeK6W8q7OQ06/RJQu/axlHs3ENUbxHUX1RvEdbeMd0gkhCdCQ+eLv7bEFhLhcw25V1EXtLdXkURief4+H05ugWtehEnfMdtGIpH0FnYug4P/NRag8wK5V5GJnDv72+q4XC7Wrl0rnDeI624Z77pyOLXNeNzJMv8tsYx7NxHVG8R1F9UbxHW3lHe/0cZwkbPeq8NdfXmvIrMRrWNK13WqqqqE8wZx3S3j3bzMf/xwiBns1VMs495NRPUGcd1F9QZx3S3l3W8MxKRCVb5Xh+t9ea8iiUTiJUeb0g9lNpFEIvE1tiAYfpkxQbcbc118iQxcJJLehtyfSCKR+JOUGTB4GpQfBy3ww1cycPES02dzdxObzcaMGTOE8wZx3S3hXXoUyo4bY9BpF3n9NEu49wBRvUFcd1G9QVx3y3mrNrjgRogfBsUHOw1ebLSzUN35vrzPz9hLaW8VRiujqipJSUnCeYO47pbwPtI0TDR4mpG66CWWcO8BonqDuO6ieoO47pb0jkiCqfdCXDoUHehw2Ej1/RQXGbh4y7l7UFgdp9PJihUrhPMGcd0t4e0ZJvIum6gZS7j3AFG9QVx3Ub1BXHfLekcPghmLIW0WVJ0yenzPyTZy6r4PM4TYHVrSMyyROtdDRHU31dvtMjKKANK7P79FtnngEdVdVG8Q192y3hGJMPU+SB4Hhz8zhqo1JwSFQ3AENPi+y0UGLhJJbyF/h7HMf2gMDJhgto1EIukrqDZjTt3gqVC4HwqzoeQIVBdCY4PPX04GLhJJb8GzzP8cr5b5l0gkEp9iCzL2Rus/3tiQsbEGCguAv/n0ZeSS/13QvOR/eXk50dHRZut4TfOCRZGRkSiKH2ZH+RFR3U33/n9XQN7XcPULMPmObj3VdPceIqo3iOsuqjeI6y6qN0BFRQUxMTFyyX+JdzgcDrMVeoyo7qZ511fAya3GYy+X+T8X2eaBR1R3Ub1BXHdRvf2BDFy8xLITozrA5XKRmZkpnDeI626q97EvQHcb6yrEpnb76bLNA4+o7qJ6g7juonqDf+6dMnCRSHoDzcv897C3RSKRSERBBi4SSW9ALvMvkUj6CDJwkUhEp+y4sfCTajcWgpJIJJJejMwq6gKRs4pcLhd2u124Weiiupvmve11+ORhY+Ozu1b26BSyzQOPqO6ieoO47qJ6g8wqknSTuro6sxV6jKjupnj7aJhItnngEdVdVG8Q111Ub38gAxcvEW02t8vlYt26dcJ5g7jupnhrbjj2ufH4PAIX2eaBR1R3Ub1BXHdRvUFmFUkkknPJ32ms4RIaDQMmmm0jkUgkfkcGLhKJyDQPEw25RC7zL5FI+gQycOnF2O3ibkUlqnvAvX2YBi3bPPCI6i6qN4jrLqq3P5BZRV3QnFXkyxnREolPqK+E3w0BzQU/3AWxaWYbSSQSSSv8cQ+VPS5eomma2QrdQtM0CgsLhfMGcd0D7n38SyNoiUs/76BFtnngEdVdVG8Q111Ub/DPvVMGLl7idrvNVugWbrebTZs2CecN4roH3NuHw0SyzQOPqO6ieoO47qJ6g3/unTJwkUhERe5PJJFI+iAycJFIRKTsBJQcBsUGQ2abbSORSCQBQwYuXiLaMsuKohAZGSmcN4jrHlDv5t6WQRcaa7icJ7LNA4+o7qJ6g7juonqDf+6dMquoC2RWkcSS/Pu7sP8DmPMEzHncbBuJRCJpF5lVZCKizebWNI0TJ04I5w3iugfMW3PD0fXGYx9MzAXZ5mYgqruo3iCuu6jeILOKTEW02dxut5usrCzhvEFc94B552dBfTmERMOAST45pWzzwCOqu6jeIK67qN4gs4okEgnA0eZl/meDTa6mKZFI+hYycJFIRONI08RcHw0TSSQSiUjIwMVLRJvNrSgKiYmJwnmDuO4B8W6ogrzNxmMfBi6yzQOPqO6ieoO47qJ6g8wqMgWZVSSxFDkr4a2bjSX+f7jLbBuJRCLpFJlVZCKiTYpyu90cOHBAOG8Q1z0g3j5c5r8lss0Dj6juonqDuO6ieoOcnGsqoqWhaZpGTk6OcN4grntAvP0UuMg2DzyiuovqDeK6i+oNMh1aIunblOdBySFQVEiTy/xLJJK+iQxcJBJRaF7mf+AUcMSYqiKRSCRmIQMXL1FVsZpKVVVSUlKE8wZx3f3u7adhIpBtbgaiuovqDeK6i+oN/rl3yqyiLpBZRRJLoLnh90Ohrgzu+hRSppttJJFIJF0is4pMRLTZ3G63m507dwrnDeK6+9X79C4jaAmJgoGTfX562eaBR1R3Ub1BXHdRvUFmFZmKaLO5NU0jNzdXOG8Q192v3s3DREMuBluQz08v2zzwiOouqjeI6y6qN1gkqygzM5NPP/20Tfmnn37Kf//7X59ISSSSc2jeDTp9jpkWEolEYjrdDlwef/zxdrt+dF3n8ccf94mURCJpQUM15H5tPJb7E0kkkj5OtwOXQ4cOMXr06DblI0eO5PDhwz6RsiKizeZWVZWMjAzhvEFcd795n/gKNCfEpEJcum/P3YRs88Ajqruo3iCuu6je4J97Z7fPGB0dzdGjR9uUHz58mPDwcJ9IWRGbzWa2Qrew2WyMHDlSOG8Q191v3p7doOeCnzZZk20eeER1F9UbxHUX1Rv8c+/sduBy7bXX8vDDD3PkyBFP2eHDh3n00Ue55pprfCpnJVwul9kK3cLlcrFx40bhvEFcd795+3H9lmZkmwceUd1F9QZx3UX1Bv/cO7sduPzud78jPDyckSNHMmTIEIYMGcKoUaOIj4/n2Wef9bmgVRBtuRtd1ykqKhLOG8R194t3xSkozjGW+R9yse/Oew6yzQOPqO6ieoO47qJ6g3/unfbuPiE6OpqNGzeyevVqdu3ahcPhYNy4cVx8sf8uqhJJn6V5mf8Bk8ARa66LRCKRWIBuBy4AiqJw+eWXc/nll/vaRyKRtCQAw0QSiUQiEl4FLn/605+47777CA0N5U9/+lOnxz700EM+EbMaok2KstlsTJgwQThvENfd596adnb9Fj8HLrLNA4+o7qJ6g7juonqDf+6dXu1VNGTIELZt20Z8fDxDhgzp+GSK0m7GkcjIvYokppGfBa9cAsGR8NNjflkxVyKRSPyJaXsVHTt2jPj4eM/jjr56W9DSEtFmc7tcLtauXSucN4jr7nNvzzL/s/0etMg2DzyiuovqDeK6i+oNFsgqcjqdDB06lOzsbJ+LWB3RZnPruk5VVZVw3iCuu8+9Azi/RbZ54BHVXVRvENddVG/wz72zW4FLUFAQ9fX1PpfwhtLSUhYtWkRUVBQxMTHcfffdVFdXd3r8gw8+SEZGBg6Hg5SUFB566CEqKioCaC2R9JDGGsjbbDxOn2uui0QikViIbq/j8oMf/IBnnnkm4F1WixYtYt++faxevZpPPvmEDRs2cN9993V4fH5+Pvn5+Tz77LPs3buXf/zjH6xcuZK77747gNYSSQ85sRHcjRCdAvFDzbaRSCQSy+DV5NyWXH/99axZs4aIiAjGjh3bZpn/9957z6eCANnZ2YwePZqtW7cyZcoUAFauXMmCBQs4efIkAwYM8Oo877zzDrfffjs1NTXY7d5lgjdPLCorKyMmJqanVQg4mqZRXFxMQkKCcPtbiOruU++VT8DXf4FJ34FrXvSNYCfINg88orqL6g3iuovqDVBeXk5sbKxPJ+d2ex2XmJgYbrzxRp+8uLds2rSJmJgYT9ACcNlll6GqKps3b+b666/36jzNDddZ0NLQ0EBDQ4Pn58rKSgDcbjdOpxMwNo2y2Wy43W40TfMc21zucrlajevZbDZUVe2wvPm8zTT7ndur1VF5UFAQmqa12rVbURSSkpLQNK3V+RVFwW63d+hulTp15t5eXa1Sp9jYWBRFQdd1r9+n9upkP7IWBXAPmYPW4nX9WafO3Lv72Qvk+xQbG+t5HX/+PfmjTue6B/oa0ZM6tfR2u92Wu+51VqeO3K1y3eusTgkJCR7vluVWuO51Vu6PQKvbgcvrr7/uc4muKCgoICkpqVWZ3W4nLi6OgoICr85RXFzMr3/9606HlwCefvpplixZ0qZ81apVhIWFAZCSksLEiRPZvXs3ubm5nmMyMjIYOXIkW7ZsoaioyFM+YcIEUlNT2bBhA1VVVZ7yGTNmkJSUxKpVq1q92XPnzsXhcJCZmdnKYcGCBdTV1bFu3bpW7bBw4UKKi4vZtGmTpzwiIoL6+npGjRrFnj17POWJiYnMnDmTQ4cOkZOT4ym3Wp0AJk6cyNatWz3lkZGRzJs3j7y8PLKysixbp/nz5+Nyubx6n9qrU2hjKVcUHQAUjmiDyG5xfn/Xafbs2URGRp7XZ0+U90nWqWd1ysrK4uTJk0LW6cCBAxw+fLhNnaz+Ps2ePZuVK1e2CkRE+exNnz4dX9PtoaJ58+bx3nvvtRk2qays5LrrrmPt2rVen+vxxx/nmWee6fSY7Oxs3nvvPd54441Wbw4Y/5UvWbKEBx54oNNzVFZWMn/+fOLi4vjoo48ICuo4tbS9HpfBgwdz+vRpT0q41SLa9qJ0l8vFqlWruPLKK1tFvCJE6U6nk9WrV3fobtUel2bvq666iqCgoB7/h6jsegv7Jw/CgEm47/4sIHXqyt0KvRPt1amxsZHVq1czf/58QkNDLdc70Vmd2nO3Uu9ER+719fV8+umnzJ8/n6CgIEtd97qqU0fuVrjudVYnXdfJzMz0eLesk9nXva7KKysrSUhIMHeoaP369TQ2NrYpr6+v54svvujWuR599FHuuOOOTo9JT08nOTmZwsLCVuUul4vS0lKSk5M7fX5VVRVXXnklkZGRvP/++50GLQAhISGEhIS0KQ8KCmrzXJvN1u6qgB0NRXVU3pFTd8pVVW23S05V1XaP78jdanXqTl2tUidFUVAUpdvvk6f8xAbj+9B5Aa9TZ+7tHd/G3YtyX9ap+ULbfBPqyLG75YGoU3vuZl0julun5tdo+TpWu+51VKfmc7U8n9Wue+e6NwcP3bkPWalOvsbrwGX37t2ex/v37281RON2u1m5ciUDBw7s1osnJiaSmJjY5XEzZsygvLyc7du3M3nyZADWrl2LpmlMmzatw+dVVlZyxRVXEBISwkcffURoaGi3/CSSgKNpcKSpq1XuTySRSCRt8HqoSFVVFEUB2l9QxuFw8OKLL3LXXXf51rCJq666ijNnzvDyyy/jdDq58847mTJlCsuWLQPg1KlTXHrppfzzn/9k6tSpVFZWcvnll1NbW8v777/fKvspMTHR6/0TmrOKysvLiY6O9kvd/EHzgkWRkZGe900URHX3iffpXfC3iyEoHH56HOzBPnXsiD7d5iYhqruo3iCuu6jeYCTFxMTEmDNUdOzYMXRdJz09nS1btrTqKQkODiYpKcmvG0AtXbqUxYsXc+mll6KqKjfeeGOrDR+dTic5OTnU1tYCsGPHDjZvNhbwGjZsWJu6pKWl+c3VKjgcDrMVeoyo7uft3dzbMmR2wIKWZvpsm5uIqO6ieoO47qJ6+wOv85RSU1NJS0tD0zSmTJlCamqq56t///5+37UyLi6OZcuWUVVVRUVFBa+99hoRERGe36elpaHrOnPmzAFgzpw56Lre7ldPghbR9ohwuVxkZmYK5w3iuvvEO4DL/LekT7e5SYjqLqo3iOsuqjdYYK+iZt58800uuugiBgwYwIkTJwB47rnn+PDDD30qJ5H0KRprIbcpDVIu8y+RSCTt0u3A5a9//SuPPPIICxYsoLy83JO2FRsby/PPP+9rP4mk75DbtMx/1CBIGG62jUQikViSbgcuL774Iq+++io/+9nPWg0PTZkypdVCZxKJpJt4sonmgmAT8CQSiSRQdHsBOofDwYEDB0hNTSUyMpJdu3aRnp7OoUOHGDduHHV1df5yNQWRs4pcLhd2u124Weiiup+3919mQOF+uOk1uCCw22r02TY3EVHdRfUGcd1F9Qb/ZBV1u8dlyJAhrZZSbmblypWMGjXKF04SHyFyECmqe4+9qwqMoAUFhszxoZH39Lk2twCiuovqDeK6i+rtD7oduDzyyCP84Ac/YPny5ei6zpYtW3jqqad44okneOyxx/zhaAlEm83dvFeOaN4grvt5eTcPEw2YAOHxPvXyhj7Z5iYjqruo3iCuu6je4J97Z7eX/L/nnntwOBz8/Oc/p7a2lttuu40BAwbwwgsvcMstt/hcUCLpExxtClxkNpFEIpF0SrcDF4BFixaxaNEiamtrqa6ubrNzs0Qi6QZymX+JRCLxmh4FLs2EhYURFhbmKxeJj+lo0ywRENW9R96F+6Cm0Fjmf/BU30t5SZ9qc4sgqruo3iCuu6je/sDrrKJ587z7T3Dt2rXnJWQ1mrOKfDkjWiJpxVd/gtW/gOGXw6J3zLaRSCQSn+GPe6jXIdz69etJTU1l4cKFAdm22mpomma2QrfQNI3i4mISEhLa3d7dyojq3mNvk5b5b0mfa3MLIKq7qN4grruo3uCfe6fXLfDMM8/gcDh45513UBSFu+++m+eee67NV2+leYVgUXC73WzatEk4bxDXvUfezjo4sdF4bGLg0qfa3CKI6i6qN4jrLqo3+Ofe6XXg8pOf/IT9+/fzwQcfUFVVxUUXXcTUqVN5+eWXqays9LmYRNInyN0E7gaIHAAJI8y2kUgkEsvT7T6nGTNm8Oqrr3L69Gl+8IMf8NprrzFgwAAZvEgkPaHlMJFgK2JKJBKJGfR4sGzHjh18/vnnZGdnc8EFF/T6eS+iLbOsKAqRkZHCeYO47j3ybrk/kYn0qTa3CKK6i+oN4rqL6g3+uXd2a6+i/Px8/vGPf/CPf/yDyspKbr/9du666y5Gjx7tczGrILOKJH6j6gz8oWl46CdHIDzBXB+JRCLxMf64h3rd47JgwQKGDh3K5s2b+f3vf8/Jkyd59tlne3XQ0hIRs4pOnDghnDeI695t76Prje/9x5setPSZNrcQorqL6g3iuovqDSZnFa1cuZK4uDhyc3NZsmQJU6dOZdKkSW2+eiuizeZ2u91kZWUJ5w3iunfb2wJp0M30mTa3EKK6i+oN4rqL6g3+uXd6vY7LL3/5S5+/uETSZ9F1uT+RRCKR9AAZuEgkZlC4H6rPgN0BKdPNtpFIJBJhEGsJPhMRbTa3oigkJiYK5w3iunfLu3mYKG0W2EP8K+YFfaLNLYao7qJ6g7juonqDBbKK+iIyq0jiF968AY6sgSv+D2b8wGwbiUQi8QumZhX1dUSbFOV2uzlw4IBw3iCuu9fezno48ZXx2AITc6EPtLkFEdVdVG8Q111UbzB5yf++jmhpaJqmkZOTI5w3iOvutXfuJnDVQ2R/SBwZGLku6PVtbkFEdRfVG8R1F9UbTE6HPnbsmM9fXCLpk7TMJhJwzFoikUjMxOvAZejQoQwZMoS77rqLN998k5MnT/rTSyLpvVho/RaJRCIRDa/TodeuXcv69etZv349b731Fo2NjaSnpzNv3jzmzp3L3Llz6devnz9dTUVVxRpVU1WVlJQU4bxBXHevvKsLoWCP8Th9TkC8vKFXt7lFEdVdVG8Q111Ub/DPvbNHWUX19fVs3LjRE8hs2bIFp9PJyJEj2bdvn88lzURmFUl8yu534L17IHksfO9Ls20kEonEr1gmqyg0NJR58+bx85//nCVLlvDQQw8RERHBgQMHfCJlRUSbze12u9m5c6dw3iCuu1feFh0m6tVtblFEdRfVG8R1F9UbLJBV1NjYyIYNG1iyZAlz584lJiaG733ve5SVlfHnP/+5V0/gFW02t6Zp5ObmCucN4rp36a3rlg1cem2bWxhR3UX1BnHdRfUG/9w7vZ7jMm/ePDZv3syQIUO45JJLuP/++1m2bBn9+/f3uZRE0ispOgDVBWAPhcFymX+JRCLpCV4HLl988QX9+/dn3rx5zJkzh0suuYT4+Hh/ukkkvYvm3pbUiyAo1FwXiUQiERSvh4rKy8t55ZVXCAsL45lnnmHAgAGMHTuWxYsX8+6771JUVORPT9MRbTa3qqpkZGQI5w3iunfpbdFhIujFbW5hRHUX1RvEdRfVGyyUVQRQVVXFl19+ybp161i/fj27du1i+PDh7N2719eOpiKziiQ+wdUAv00FVx08sBH6jTHbSCKRSPyOZbKKAMLDw4mLiyMuLo7Y2FjsdjvZ2dk+kbIiLpfLbIVu4XK52Lhxo3DeIK57p965XxtBS0Q/SBodeLku6JVtbnFEdRfVG8R1F9Ub/HPv9HqOi6ZpbNu2jfXr17Nu3Tq++uorampqGDhwIHPnzuWll15i7ty5Phe0CqJtoq3rOkVFRcJ5g7junXq3HCay4DL/vbLNLY6o7qJ6g7juonqDf+6dXgcuMTEx1NTUkJyczNy5c3nuueeYM2cOQ4cO9bmURNLraLk/kUQikUh6jNeBy+9//3vmzp3LiBEj/OkjkfQ+aorh9C7jsYWW+ZdIJBIR8XqOy/33398maBk7dix5eXk+l7IiNpvNbIVuYbPZmDBhgnDeIK57h95H1xvf+42FSGvu59Xr2lwARHUX1RvEdRfVG/xz7/S6x6U9jh8/jtPp9JWLpREtDU1VVVJTU83W6BGiunfofaRpmGjonID6dIde1+YCIKq7qN4grruo3uCfe6dYd2MTEW02t8vlYu3atcJ5g7ju7XpbeJn/lvSqNhcEUd1F9QZx3UX1Bv/cO88rcJk9ezYOh8NXLpZGtNncuq5TVVUlnDeI696ud1EOVOUby/ynzDBPrgt6VZsLgqjuonqDuO6ieoPJWUXtkZmZ6SsPiaR30pxNlDIDgvpGkC+RSCT+pNuBS0lJiWePory8PF599VXq6uq45pprmD17ts8FJRKhEWCYSCKRSETC6yX/9+zZw9VXX01eXh7Dhw/n7bff5sorr6SmpgZVVampqeHdd9/luuuu87NyYGlerrisrIyYmBizdbxG0zSKi4tJSEgQbmKxqO5tvF0N8EwaOGvhe19B8gVmK3ZIr2lzgRDVXVRvENddVG8w9jmMjY01Z8n/xx57jLFjx7JhwwbmzJnDN77xDRYuXEhFRQVlZWXcf//9/Pa3v/WJlBUR7cOiqipJSUnCeYO47m2887YYQUt4kuX3Juo1bS4QorqL6g3iuovqDSZnFW3dupWnnnqKiy66iGeffZb8/Hy+//3vo6oqqqry4IMPcuDAAZ8LWgXR0r6dTicrVqwQzhvEdW/j7RkmmmvJZf5b0mvaXCBEdRfVG8R1F9Ub/HPv9DpwKS0tJTk5GYCIiAjCw8OJjY31/D42NpaqqiqfC0p6joipc82I6t7KW7D5Lb2izQVDVHdRvUFcd1G9/UG3+nCUc/5rPPdniUTSRE2JXOZfIpFI/EC3soruuOMOQkJCAKivr+d73/se4eHhADQ0NPjeTiIRlWPrAR2SxkBkstk2EolE0mvwOqvozjvv9OqEr7/++nkJWY3mrKLy8nKio6PN1vGa5gWLIiMjhesZE9W9lfdHi2Hnv2DGYrjiKbPVuqRXtLlA3iCuu6jeIK67qN4AFRUVxMTE+DSryOsel94WkPQFRF7VWFR3h8PRtMz/eqNg6FxTfbqD0G0uKKK6i+oN4rqL6u0PxMutMgnRJka5XC4yMzOF8wZx3T3eZw5A5UmwhUDKTLO1vEL4NhfMG8R1F9UbxHUX1RssuFeRRCJpi3qsaZn/1BkQHGaujEQikfQyhAlcSktLWbRoEVFRUcTExHD33XdTXV3d6XPuv/9+hg4disPhIDExkWuvvbZXrzUjsQbK0fXGg3RxhokkEolEFIQJXBYtWsS+fftYvXo1n3zyCRs2bOC+++7r9DmTJ0/m9ddfJzs7m08//RRd17n88stxu90Bspb0NRTNhXLiK+MHQdZvkUgkEpHwOqvITLKzsxk9ejRbt25lypQpAKxcuZIFCxZw8uRJBgwY4NV5du/ezfjx4zl8+DBDhw716jkiZxW5XC7sdrtws9BFddd1HfeRz7H/61oIT4RHD4IgS3SL3OYieoO47qJ6g7juonqDyVlFZrJp0yZiYmI8QQvAZZddhqqqbN68meuvv77Lc9TU1PD6668zZMgQBg8e3OFxDQ0NrdakqaysBIxli5uXLlZVFZvNhtvtRtM0z7HN5S6Xi5bxoM1mQ1XVDsvPXRLZbjfelnMnNXVUHhQUhKZpbXqS6urqCA8Pb+WoKAp2u71DdyvUSdd16uvrO3Q/t65WqZOu67hzVmEH9PQ5uNxuaOHZ3vtklTrpuk51dbVnI9Hz+ewFsk6aplFdXU1ERAR2u91vf0/+qFN77oG8RpxPnaqqqoiIiEBRFEtd97ypU3vuVrjudVYnm81GTU0NYWFhnsDFKte9rsr9gRCBS0FBAUlJSa3K7HY7cXFxFBQUdPrcv/zlLzz22GPU1NSQkZHB6tWrCQ4O7vD4p59+miVLlrQpX716NWFhxkTLlJQUJk6cyO7du8nNzfUck5GRwciRI9myZQtFRUWe8gkTJpCamsqGDRtabYswY8YMkpKSWLVqVas3e+7cuTgcDjIzM1s5LFiwgLq6OtatW9eqHRYuXEhxcTGbNm3ylEdERFBdXc3YsWPZs2ePpzwxMZGZM2dy6NAhcnJyPOVWq5PL5eLCCy9k69atnvLIyEjmzZtHXl4eWVlZlqzTxTn/xQHUD5jBqhblHb1PVqvT7NmziYyMPK/PntXq5Iu/J1mns3XatWsXJ0+eFLJOOTk5HD58uE2drP4+zZ49m88//7zVOUT57E2fPh1fY+pQ0eOPP84zzzzT6THZ2dm89957vPHGG63eHICkpCSWLFnCAw880OHzKyoqKCws5PTp0zz77LOcOnWKr776itDQ0HaPb6/HZfDgwZw+fZr4+HjAehFte1G6y+Vi1apVXHnlla125xQhSnc6naxevbpDd7N7Jzpyd1aewfHiBSjo6I9k43Iktjre7N6JzurU3OZXXXUVQUFBluud6KhOjY2NrF69mvnz5xMaGmrJ3omO6tSeu9V6J9pzr6+v59NPP2X+/PkEBQVZ6rrXVZ06crfCda+zOum6TmZmpse7ZZ3Mvu51VV5ZWUlCQkLvGSp69NFHueOOOzo9Jj09neTkZAoLC1uVu1yuVhs/dkR0dDTR0dEMHz6c6dOnExsby/vvv8+tt97a7vEhISGebQ1aEhQU5PnANGOz2bDZbG2ObX4DvS0/97w9KW/epbu98vaO78jdanXqTl3NrpOSt8kIWhJGokQNoL2jO3ufrFAnRVFQFMVnnz1/16n5Qtt8E+rIsbvlgahTe+5mXSO6W6fm12j5Ola77nVUp+ZztTyf1a5757o3Bw/duQ9ZqU6+xtTAJTExkcTExC6PmzFjBuXl5Wzfvp3JkycDsHbtWjRNY9q0aV6/nq7r6LreZ/ZV6uiDKAJCuVechC2vYtv6dwC0ARNpe7mwPkK1eQtE9QZx3UX1BnHdRfX2B0JkFQFcddVVnDlzhpdffhmn08mdd97JlClTWLZsGQCnTp3i0ksv5Z///CdTp07l6NGjLF++nMsvv5zExEROnjzJb3/7W7766iuys7PbzJnpiOasIl92c0l6AboOJ7fC13+B/R+B3tS1G9EPvv0e9LvAXD+JRCKxAP64h4qRqwksXbqUkSNHcumll7JgwQJmzZrFK6+84vm90+kkJyeH2tpaAEJDQ/niiy9YsGABw4YN4+abbyYyMpKNGzd6HbS0pOVYoQhomkZhYaFw3mBxd7cT9rwLf78U/t982Pe+EbSkzUa7eSmFt3+OljjabMtuY+k27wRRvUFcd1G9QVx3Ub3BP/dOYQKXuLg4li1bRlVVFRUVFbz22mtERER4fp+Wloau68yZMweAAQMGkJmZyZkzZ2hsbCQvL4+lS5eSkZHRo9cXbdE6t9vNpk2bhPMGi7rXlMCGZ+H5sfCfu+HUdmMvoom3w/e+gjs+wT3sCjZt3mItby+xZJt7gajeIK67qN4grruo3uCfe6ccNJNIOqMwG77+K+xeDq56oyyiH1x4D0y+EyK6nqMlkUgkEt8hAxeJ5Fw0DQ6vNuavNO87BNB/PEz/AYy5HuwdrwUkkUgkEv8hAxcvEW2ZZUVRiIyMFM4bTHRvqIasZbD5ZSg90iSjwshvwPTvQ8p06MRJtnngEdUbxHUX1RvEdRfVG/xz7xQmq8gsZFZRH6DsBGx5BXa8CQ0VRllINEz+Dky9D2JSzPWTSCQSQenTWUVmI9psbk3TOHHihHDeECB3XYcTG2H57fCnCbDpz0bQEj8MFjwLj+yHy3/TraBFtnngEdUbxHUX1RvEdRfVG/p4VpHZiDab2+12k5WVJZw3+Nnd1QBZb8Erl8DrV0H2x6BrkD4XbnsHfrAVpt4LIRFdnyuQ3n5GVHdRvUFcd1G9QVx3Ub1BZhVJJD2nugi2vQZb/w41TdtH2ENh/C0w7XuQNMpcP4lEIpF4hQxcJL2b07uNybZ73gF3o1EW2d/oVZl0B4THm6onkUgkku4hAxcvEW02t6IoJCYmCucNPnDX3HBwpbH+yvEvzpYPnGxkB42+Fmy+3wisT7e5SYjqDeK6i+oN4rqL6g0yq8gUZFaRQNRXws5/wZa/Qdlxo0yxGYHK9O/D4AtN1ZNIJJK+hswqMhHRJkW53W4OHDggnDf0wL30KPz3cfjjaPj0CSNoCY2BWT+Ch3fDN18PSNDSp9rcIojqDeK6i+oN4rqL6g3+uXfKwMVLREtD0zSNnJwc4bzBS3ddh2Mb4K1b4U+TYPNfobEKEjLgG8/BI9lw2f9C9CBreVsUUd1F9QZx3UX1BnHdRfUG/9w75RwXiVg4642JtptfhjN7z5YPmw/TH4Ch8zpd3VYikUgkYiMDF4kYVBXA1v9npDTXFhtlQWEw4TaYej8kjjDXTyKRSCQBQQYuXqKqYo2qqapKSkqKcN5wjnv+TiM7aO97oDmNA6IGwbT7YNJ3wBFrrmwLek2bC4So3iCuu6jeIK67qN7gn3unzCrqAplVZAJuF+SsMAKW3E1nywdPN4aDRn4DbDLmlkgkEqsjs4pMRLTZ3G63m507dwrnTWMt+kvT4N/fMYIW1Q5jvwX3roW7P4Ux11k2aBG2zRHXXVRvENddVG8Q111Ub5BZRaYi2mxuTdPIzc0VzpuD/0UpPYxTDcV90aPw8F648VVj8TiLI2ybI667qN4grruo3iCuu6jeIDdZlPQF9n8IwLHEy9DmPAFR/U0WkkgkEomVkIGLxDo01sDBVQDkx8hVbiUSiUTSFhm4eIlos7lVVSUjI0Ms70OrwFWHHpNK8oQrxHJH0DZvQlR3Ub1BXHdRvUFcd1G9QWYVmYLMKgog79wB+96Hi34I839lto1EIpFIzhOZVWQiLpfLbIVu4XK52LhxozjejbVw8FMAXBnfEMu9CeHavAWiuovqDeK6i+oN4rqL6g3+uXfKwMVLROuY0nWdoqIicbwPfwbOWohJQU+eIJZ7E8K1eQtEdRfVG8R1F9UbxHUX1Rv8c++UgYvEGuz/wPg++lq515BEIpFIOkQGLhLzcdZBzkrj8ejrTFWRSCQSibWx5hKkFsRms5mt0C1sNhsTJkwQw/vwGnDWGHsQDZyMTdfFcW+BUG1+DqK6i+oN4rqL6g3iuovqDf65d8qsoi6QWUUB4D/3wJ53YPoP4Mr/M9tGIpFIJD5CZhWZiGizuV0uF2vXrrW+t7P+7DDRmOsAgdzPQVRvENddVG8Q111UbxDXXVRvkFlFpiJax5Su61RVVVnf+8haaKyCqIEwcAogkPs5iOoN4rqL6g3iuovqDeK6i+oNMqtI0htpziYadQ0IuCqkRCKRSAKLvFNIzMPVADn/NR43DRNJJBKJRNIZMnDxEtFmc9tsNmbMmGFt7yProKESIvvDoKmeYiHc20FUbxDXXVRvENddVG8Q111Ub/DPvVOmQ3uJaJtbqapKUlKS2Rqd08EwkRDu7SCqN4jrLqo3iOsuqjeI6y6qN/jn3inW3dhEnE6n2Qrdwul0smLFCut6uxrhQKbx+JxhIsu7d4Co3iCuu6jeIK67qN4grruo3uCfe6cMXHoxlk6dO7oeGiogIhkGT2/za0u7d4Ko3iCuu6jeIK67qN4grruo3v5ABi4Sc/AME10ts4kkEolE4jXyjiEJPK5GOPCJ8VhmE0kkEomkG8gl/7ugebni8vJyoqOjzdbxmuYFiyIjI1Gsttvyoc9g6Y0QngSPHgC19axzS7t3gqjeIK67qN4grruo3iCuu6jeABUVFcTExMgl/yXe4XA4zFZon/3vG99HXd0maGnGsu5dIKo3iOsuqjeI6y6qN4jrLqq3P5CBi5eINjHK5XKRmZlpPW+3Ew6sMB53MExkWfcuENUbxHUX1RvEdRfVG8R1F9Ub5F5Fkt7AsQ1QVwZhCZAy02wbiUQikQiGDFwkgWX/h8b3UVeDTa5/KJFIJJLuIQMXSeBwu2Q2kUQikUjOC5lV1AUiZxW5XC7sdrt1ZqEfWQdvXgdh8fDowQ57XCzp7gWieoO47qJ6g7juonqDuO6ieoPMKpJ0k7q6OrMVWtM8TDTyG10OE1nO3UtE9QZx3UX1BnHdRfUGcd1F9fYHMnDxEtFmc7tcLtatW2cdb7cLsj82HncxTGQ5dy8R1RvEdRfVG8R1F9UbxHUX1RtkVpFEZE58BbXF4IiFtNlm20gkEolEUGTgIgkMrYaJgsx1kUgkEomwyMClF2O3WyTdWHN7PUzUjGXcu4mo3iCuu6jeIK67qN4grruo3v5AZhV1QXNWkS9nRPc5jn0Bb3wDQmPgJ4dlj4tEIpH0EfxxD5U9Ll6iaZrZCt1C0zQKCwut4d3NYSJLuXcDUb1BXHdRvUFcd1G9QVx3Ub3BP/dOGbh4idvtNluhW7jdbjZt2mS+t+aG7I+Mx6Ov9eoplnHvJqJ6g7juonqDuO6ieoO47qJ6g3/unTJwkfiXvM1QfQZCoyF9jtk2EolEIhEcGbhI/Mu+D4zvGQvBHmyqikQikUjER5jApbS0lEWLFhEVFUVMTAx333031dXVXj1X13WuuuoqFEXhgw8+6NHri7bMsqIoREZGmuutad0eJgKLuPcAUb1BXHdRvUFcd1G9QVx3Ub3BP/dOYbKKrrrqKk6fPs3f/vY3nE4nd955JxdeeCHLli3r8rnPPfccq1ev5r///S/vv/8+1113ndevK7OKzoPcr+G1KyAkysgmsoeYbSSRSCSSANJns4qys7NZuXIlf//735k2bRqzZs3ixRdf5O233yY/P7/T52ZlZfGHP/yB11577bwcRJvNrWkaJ06cMNfbM0y0oFtBiyXce4Co3iCuu6jeIK67qN4grruo3uCfe6cQK9ps2rSJmJgYpkyZ4im77LLLUFWVzZs3c/3117f7vNraWm677TZeeuklkpOTvXqthoYGGhoaPD9XVlYCUF9fj9PpBEBVVWw2G263u9Wb0lzucrlo2ZFls9lQVbXD8ubzNtO80NC5ezx0VB4UFISmaa1mb7tcLrKyskhOTkZVz8aniqJgt9s7dPdZnRobsO//AAVwZSzE1nSMN3VyOp2dup9b14DVqYv3qdm7f//+BAUFefU+WaVOXbl357MXyDo1NjaSlZVFYmIioaGhfvt78ked2nMP5DWip3Vq6R0UFGSp615XderI3crXckVR0HW9lXfLOpl93euq3B9ZRUIELgUFBSQlJbUqs9vtxMXFUVBQ0OHzfvSjHzFz5kyuvdb7+RVPP/00S5YsaVO+bt06wsLCAEhJSWHixIns3r2b3NxczzEZGRmMHDmSLVu2UFRU5CmfMGECqampbNiwgaqqKk/5jBkzSEpKYtWqVa3e7Llz5+JwOMjMzGzlsGDBAurq6li3bl2rdli4cCHFxcVs2rTJUx4REQHAqVOn2LNnj6c8MTGRmTNncujQIXJycjzlvq7Tlvf/wkVVp3Gqoaw82MAlg6u6VSeAkpIStm7d6imPjIxk3rx55OXlkZWVFfA6efs+uVwu6uvrvXqfrFan6upqIiMjz+uzZ0adVq9e7de/J3/WafXq1aZcI3pap3379nm8u/s+mV2nI0eOtHIX4VoeGRnJ7NmzW3m3rJNVrnsd1Wn69On4GlPnuDz++OM888wznR6TnZ3Ne++9xxtvvNHqzQFISkpiyZIlPPDAA22e99FHH/Hoo4+yc+dOz01cUZQu57i01+MyePBgTp8+TXx8PGC9iLajHpdVq1Zx5ZVXmtLj4s78KbYtL6NdcBPua1/uVp2cTierV6/u0N3s3omO3Ju9r7rqKiF7XDpzN7t3orMel9WrVzN//nwhe1zOdbdS70RH7vX19Xz66afMnz9fuB6XjtytfC1v7nHJzMz0eLesk9nXva7KKysrSUhI8OkcF1N7XB599FHuuOOOTo9JT08nOTmZwsLCVuUul4vS0tIOh4DWrl3LkSNHiImJaVV+4403Mnv2bNavX9/u80JCQggJaTsfIzg42POBacZms2Gz2doc29GeEh2Vn3venpSrqtrmJp+YmIjNZmv3dTty90mddB3bgU8MrzHXo7bw9aZOXbmfW9eu3AP1PjV7q6qKoihevU9dlQeqTt64tzzeG/dA1SkxMZHg4GDPa/nj76mr8p7W6Vz3QF4juirvzL3Zu6WvFa57XZV35G7lazkY97v2vDtzt0qd+mxWUXZ2NqNHj2bbtm1MnjwZwNObcPLkSQYMGNDmOQUFBRQXF7cqGzt2LC+88AJXX301Q4YM8eq1ZVZRDzi5Df5+KQRHGNlEQQ6zjSQSiURiAn02q2jUqFFceeWV3HvvvWzZsoWvvvqKxYsXc8stt3iCllOnTnnG7wCSk5O54IILWn2BMf7nbdDSEtGWWna73Rw4cMAc733vG99HXNGjoMVU9/NAVG8Q111UbxDXXVRvENddVG/o40v+L126lJEjR3LppZeyYMECZs2axSuvvOL5vdPpJCcnh9raWr+8vmhpaJqmkZOTE3hvXYf9zYvOXdejU5jmfp6I6g3iuovqDeK6i+oN4rqL6g19OB0aIC4urtPF5tLS0uhq1EuAUTHxyd8BFbkQFA7D55ttI5FIJJJehjA9LhJBaF50bsTlcm6LRCKRSHyODFy8pL0Z6lZGVVVSUlIC663rsP9D43EPh4nAJHcfIKo3iOsuqjeI6y6qN4jrLqo3+OfeKURWkZnIrKJukL8TXpkDQWHwkyMQHGa2kUQikUhMpM9mFVkB0WZzu91udu7cGVjv5mGi4fPPK2gxxd0HiOoN4rqL6g3iuovqDeK6i+oNfTyryGxEm82taRq5ubmB8/bRMBGY4O4jRPUGcd1F9QZx3UX1BnHdRfUG/9w7ZeAi8Q0Fu6HsGNgdMPxys20kEolE0kuRgYvENzT3tgy/DEIizHWRSCQSSa9FBi5eItpsblVVycjICIy3rp+d33Kew0QQYHcfIqo3iOsuqjeI6y6qN4jrLqo3yKwiU5BZRV5QsAdengX2UGNvopBIs40kEolEYgFkVpGJnLtVt9VxuVxs3LgxMN7Nw0TDLvNJ0BJQdx8iqjeI6y6qN4jrLqo3iOsuqjf4594pAxcvEa1jStd1ioqK/O/t42Ei45QBcvcxonqDuO6ieoO47qJ6g7juonqDf+6dMnCRnB+F+6HkENhCjN2gJRKJRCLxIzJwkZwfnmGiSyFUzgGSSCQSiX+RgYuX2Gw2sxW6hc1mY8KECf739vEwEQTQ3ceI6g3iuovqDeK6i+oN4rqL6g3+uXfKrKIukFlFnVCYDX+ZDrZgI5soNNpsI4lEIpFYCJlVZCKizeZ2uVysXbvWv97Nw0RD5/k0aAmIux8Q1RvEdRfVG8R1F9UbxHUX1RtkVpGp6G6xPjC6rlNVVeXfWeh+GCaCALn7AVG9QVx3Ub1BXHdRvUFcd1G9QWYVmYq6a5nZCtaiKAeKskENgoyrzLaRSCQSSR9BBi5eon7xO6g8bbaGdfAME80FR4ypKhKJRCLpO8jAxUuUxmr49AmzNbzGZrMxY8YM/81C99MwEQTA3U+I6g3iuovqDeK6i+oN4rqL6g0yq8gUPDOiH48mKkSHRe/C8Plma5lL8SH48xRQ7fDjQxAWZ7aRRCKRSCyIzCoyEffkO4wHKx6BxlpTXbzB6XSyYsUKnE6n70++/wPje/ocvwQtfnX3I6J6g7juonqDuO6ieoO47qJ6A35xloGLl2gX/QiiBkF5Lmz4ndk6XuG31Ll9TfNbRl/rn/MjXvp5M6J6g7juonqDuO6ieoO47qJ6+wMZuHhLcAQsaApYNr4IZ/ab62MWJUfgzB5QbDDyG2bbSCQSiaSPIQOX7jByoXGz1lzwycOgaWYbBR7PMNElcm6LRCKRSAKOnJzbBc0Ti8rLy4mOjoaKk/DSNGishqtfgOa5LxajecGiyMhIFEXx3Yn/djGc3uXXuvvN3c+I6g3iuovqDeK6i+oN4rqL6g1QUVFBTEyMnJxrKtGDYO6TxuPV/wPVheb6dILD4fDtCUuPGUGLYoORV/v23Ofgc/cAIao3iOsuqjeI6y6qN4jrLqq3P5CBi5e0mhg19X5IHgf1FfDpz8yT6gSXy0VmZqZvJ3Q1DxMNmQ3h8b477zn4xT0AiOoN4rqL6g3iuovqDeK6i+oNcq8i62Czw9XPAwrs+TccWWu2UWDY7/9sIolEIpFIOkMGLj1l4GSYep/xeMWj4Kw318fflB2H/J2gqH4fJpJIJBKJpCNk4HI+zPs5RPaH0qPwxR/MtvEvzb0tabMgItFcF4lEIpH0WWRWURe0ySo6l30fwDvfNXZJfuArSMwIuGN76LqOy+XCbrf7Zhb6q/Pg1HZY+Ae48J7zP18n+Nw9QIjqDeK6i+oN4rqL6g3iuovqDTKryJqMvhaGXwGaEz75EVgoDqyrq/PNicpzjaAFBUZd45tzdoHP3AOMqN4grruo3iCuu6jeIK67qN7+QAYuXtLhzGhFgQW/B7sDTnwFWUsDK9YBLpeLdevW+WZGd/MwUepFEJF0/ufrAp+6BxBRvUFcd1G9QVx3Ub1BXHdRvUFmFVmX2FSY+4TxeNUvoKbEXB9f0xy4jLnOVA2JRCKRSGTg4iumfx+SxkBdKaz+hdk2vqPiJJzcijFMJLOJJBKJRGIuMnDxFbags2u7ZC2FY1+YbYTdbj//k+z/yPieMgMik8//fF7iE3cTENUbxHUX1RvEdRfVG8R1///tnXlcVFXfwL/DwAygCMoioCwuictjaZqK5pomaqaPLZq5L0+L9paZaZaZmtprlpYtVirYaplopaSSiZZrpZYL8ihqmmGaC6hss5z3j3mZnBxgBmbh5Pl+PvNhuHPuud9z586c39yzyertDtSoonIoGVXkcI/otRPgx2UQepNllJGv3v2S7mTpnXBqF/SaB20f8raNQqFQKCTC6TrUAdQdFwcxO7oS9B3ToVoEnD8C3y90q1NZmM1mzp4967i3PXJPW4IW8NhoInCRuxeQ1RvkdZfVG+R1l9Ub5HWX1RucqDudQAUuDmIymRxLGBACSXMtz797Bc5nu82pLEwmEzt27HDc2x6ZX1n+xrSDGlGuEXMAl7h7AVm9QV53Wb1BXndZvUFed1m9wYm60wlU4OIO/nUPNOgGpqIqN7eLU5QsqqhGEykUCoWiiqACF3eg0VhmmPX1h+Nb4JfPvG3kPHk5cHKn5bkHm4kUCoVCoSgLFbg4iNPTLNeqD50mWZ5vmAr5F1wvVQYajYagoKCKTw+d+RUgoG4bCK7jUrfyqLS7l5DVG+R1l9Ub5HWX1RvkdZfVGypQdzqSpxpVVDaV6hFtLIZ3OsK5w3DrMLh7kXsk3UFyb8tMwD3nQOI4b9soFAqFQkLUqCIvUqGe0b46uGuB5fme9+HXHa6VKgOz2cyvv/5aMe/LZ+DX7ZbnXmgmqpS7F5HVG+R1l9Ub5HWX1RvkdZfVG9SoIq9S4Z7Rce2h5VDL87UTLHdhPIDJZGLfvn0V8y5pJqrTGkJiXO5WHpVy9yKyeoO87rJ6g7zusnqDvO6yeoMaVSQvPWZCYBicy4QdEjQXqbWJFAqFQlFFUYGLJwisBT1nW55vmQcXjnvXpyyunLX0bQE1mkihUCgUVQ4VuDhIpXtG3zwQ6nUCYyGsm+j2uV00Gg3h4eHOe2d+BcIM0bdaVr32AhV29zKyeoO87rJ6g7zusnqDvO6yeoMaVeQVXNoj+s+j8HYimIrh3mWWieqqGsv7wvGtluatDo9720ahUCgUEqNGFXkRl3QwCmsIHSdanq9/BgouVT7PUjCZTBw+fNg576t/wonvLc+b9nOPmANUyL0KIKs3yOsuqzfI6y6rN8jrLqs3qM65XsVlQ7punwChDeHKH7BppmvytIPZbCYrK8s575JmoqgWUDPeXWrlUiH3KoCs3iCvu6zeIK+7rN4gr7us3qCGQ/8z8NX/NbfLj8vg1A/e9bkWtTaRQqFQKKo4KnDxBvU6wS0PAALWPgEmg7eN4Op5OP6d5bkXm4kUCoVCoSgLaQKXCxcu8OCDD1KjRg1CQkIYPXo0V65cKXOfLl26oNFobB4PP/xwhY7v4+PiU3XnixBQE/44ADvfdm3eWHxjY2Md9z68FoQJIm+2rLPkRZx2ryLI6g3yusvqDfK6y+oN8rrL6g1uqDuRaFRRr169yMnJ4Z133sFgMDBy5Ehuu+02Pv7441L36dKlC40aNWLmzL/6kgQGBjrVs9kdPaKt7PkAvhwPfoEwbheExLo2f2f4YABkb4I7nv+rA7FCoVAoFJXghh1VlJmZyfr161myZAlt27bl9ttvZ9GiRaxYsYLff/+9zH0DAwOJjIy0Pip64tzSm7vlEIjrAIZ8SJvk0rldTCYTe/fudcw7/wIc32J53rS/yxwqilPuVQhZvUFed1m9QV53Wb1BXndZvcE9daevy3N0Azt27CAkJITWrVtbt3Xv3h0fHx927drFv//971L3/eijj/jwww+JjIykb9++TJs2jcDAwFLTFxUVUVRUZP0/Ly/Put1gsPRF8fHxQavVYjKZbHpMl2w3Go1ceyNLq9Xi4+Njf/tdCxBvd0Dz3/UYD6xBNL4LX1/L22I0Gm3cStvu5+eH2Wy2uUCMRiMnT56kadOmNo4ajQZfX18bd83BL/E1G6F2c0wh8ZgNf/W5qVCZfHys56o8d3vbDQZDme5/L6u9Ml3r7pL3yYEylXg3a9bMms+12HufqkqZynN35trzZJmKi4s5efIkCQkJ+Pv7V/ra82SZ7Lm74/Pk6jKVXCsJCQn4+fl55TuiomUqzd1T3xEVLZMQwsb72jJ5+3uvvO3uGFUkReBy5swZIiIibLb5+vpSq1Ytzpw5U+p+gwcPJi4ujujoaH755RcmT55MVlYWqamppe4zd+5cZsyYcd32zZs3WwOe2NhYWrZsyS+//MLJkyetaRISEmjcuDG7d+/m3Llz1u0tWrQgLi6OrVu3cvnyZev2xMREIiISOFq7DzflrMHw5QS+PVJEx+69CQgIIC0tzcahd+/eFBQUsHnzZpvz0KdPH/7880927Phr9enq1asDcPr0afbv32/dHh4eTvv27Tly5AhZWVkAtMteSm2Apv1cVKYINm7caHMBd+3a1akyAZw/f54ffvhr1FVQUBDdunXj1KlT7Nu3r8wygavfJ8fLZDQaKSwsdOh9qmplunLlCkFBQZW69rxRpvT0dJdde54uU3p6uts/T64s08GDB63ezr5P3i5Tdna2jbu3viOcLVPHjh1tvK8tU1X53iutTO3atcPVeLWPy5QpU/jf//3fMtNkZmaSmprK8uXLbd4cgIiICGbMmMEjjzzi0PG+/fZb7rjjDo4ePUqDBg3sprF3xyUmJoacnBxCQ0MBN0S0+Xn4vtcJzcXjmG77Dz695wGVv+OyceNGkpKSbDpHXRelF1zCd2ETNGYDjP8RU836Xo/SDQYD6enppbp7++5Eae4l3r169cLPz88tv3qFENa0riyT0Whk+/btdOzY0a67t+9OlFYmg8HA9u3bad++PXq9vsrdnSirTPbcXfV5MplM+Pr6otVqXV6mwsJCNmzYQI8ePaS741Kae1W5O1HWHZe0tDSr97Vl8vb3Xnnb8/LyCAsLc2kfF6/ecZk4cSIjRowoM039+vWJjIzk7NmzNtuNRiMXLlwgMjLS4eO1bdsWoMzARa/Xo9fr7W4vuWBK0Gq11i+Gayl5Ax3d7hdYA+56FT74N9ofl0CLB6DOrdcdz5reznYfHx+bSt7Hx4eEhASbLy+77gc2gtkAEc0g7Ca0//9apcvkhPvft5fn/veyllDa++Gy96kc9xJvrVaLRqNx6H0qb3uJuxCCM2fOcOnSJbsOlUUIQUxMDL/99ptU66GUeOfk5EjlDZ5xDwkJsX5HVvTa+zt+fn4kJCSg1+ttXvfkd0R57qVtL83dU98Rjmy3524ymex6l+VeVcrkjlFFXg1cwsPDCQ8PLzddYmIily5d4qeffqJVq1aA5e6J2Wy2BiOOUHLrMCoqymlXexeAS2nQDZrfB/tXWuZ2GfMtaCv+9mi1Who3blx+wkNfWP5WoblbHHavYrjTuyRoiYiIIDAwULpKWuFZhBDk5+dbf/BV5DuvNGT9fIK87rJ6g3vqTin6uDRp0oSkpCTGjh3L4sWLMRgMjB8/nkGDBhEdHQ1Y+nLccccdvP/++7Rp04bs7Gw+/vhjevfuTWhoKL/88gsTJkygU6dO3HzzzU47/P32l1voOQeObIScn+GH96CdY01g9jAajezevZs2bdqUGklTcAmyv7U8r0Kz5TrkXgVxl7fJZLIGLSXNla5GCMHVq1epVq2aVEGRrN7gfveAgAAAzp49S0REhMsqEFk/nyCvu6ze4J66U4rh0GAZHdS4cWPuuOMOevfuze233867775rfd1gMJCVlUV+fj4AOp2Ob775hjvvvJPGjRszceJE7rnnHr766qsKHd8jXYGqR0D3FyzPv30Rck9XOCshBOfOnSvbO+trSzNReBMIT6jwsVyNQ+5VEHd5l7QxlzUarrIIIa5r45YBWb3BM+4l18zf+ylUBlk/nyCvu6ze4J66U5rQrVatWmVONhcfH29zgmJiYtiyZYsn1FzLrSNg3yfw2274+mkY9JH7jlUFm4kUpSPbHQWF91HXjOKfiDR3XG4YfHyg70Lw8bVMw384rdxdKkRhrmWmXKhSzUQKhUKhUJSFClwcxO2dc6+ldjNIHG95njYJispek8keWq2WFi1alO793w1gKoawBIhoUglZ11OuexVFVm+w/DIPCAiQ7he6K7xTUlIICQlxnZSDyHrOZb7OZXWX1RvcU3eqwMVBPL64VefJlrWL8n6DjLlO7+7j40NcXFzp3gfXWP5WwWaict2rKLJ6g6US1ev1Lq9ER4wYQf/+/Ut9/eeff+buu+8mIiICf39/4uPjGThwIGfPnuWFF164bpFUe4+HHnoIHx8fuwuojhs3Do1GU+60C+7g+PHjDB48mOjoaPz9/albty79+vXj8OHDgOWcl8yYu3PnTpt9i4qKCA0NRaPRkJGRAcCJEycYPXo09erVIyAggAYNGjB9+nSKi4s9Wi6Zr3NZ3WX1BvfUnfKdBS/hkVFF16ILhD6vWp7vfBtyfnFqd6PRyLfffmvfuzAPjn5jeV4Fm4nKdK/CyOoNlg50eXl5Hu38d+7cOe644w5q1arFhg0byMzMJDk5mejoaK5evcpTTz1FTk6O9VG3bl1mzpxps00IgcFgICYmhhUrVlBQUGDNv7CwkI8//pjYWM8vXmowGOjRowe5ubmkpqaSlZXFp59+SvPmza1z8ZSc65iYGJKTk232X716tXX26xIOHz6M2WzmnXfe4eDBgyxYsIDFixczdepUj5SpBJmvc1ndZfUG99Sd0nTO9TZe6c19Uw/LooeH1ljmdhmdDj6O3XYTQnD58mX73kc2gqkIQm+CiKauNHYJZbpXYTzpLYSgwOC6xcvMZjNXCw346Azl/kIK8NO65M7Mtm3byM3NZcmSJdYhnvXq1aNr167WNNdW3lqtlqCgIJtJJ81mM0IIWrZsybFjx0hNTeXBBx8EIDU1ldjYWOrVq+eQz5o1a5g0aRKnTp2ic+fOLFmyhJiYGE6cOEH9+vXZvXu3zXppCxcuZMGCBRw/fvy6c3bw4EGys7PZtGkTcXFxAMTFxdGhQwdrmpLrZNiwYSxatIiFCxdahzAvW7aM4cOHM2vWLGv6pKQkkpKSrP/Xr1+frKws3n77bebPn+9QGV2BrJ9PkNddVm+4wUcV3bAkvWSZa+X0T/DjMmgztvJ5Hlxt+du0H0jWvq6wUGAw0fT5DV459qGZPQnUVf6rIzIyEqPRyOrVq7n33nsrHQyNGjWK5ORka+CybNkyRo4caW1qKYv8/Hxmz57N+++/j06n49FHH2XQoEFs27aN+Ph4unfvTnJysk3gkpyczIgRI+wGeuHh4fj4+PD555/zxBNPlNnOf+uttxIfH8+qVasYMmQIJ0+eZOvWrbz55ps2gYs9cnNzqVWrVrnlUyj+SaimoqpOjSi443nL800zIS+ncvkVXanSzUSKG4d27doxdepUBg8eTFhYGL169eLll1/mjz/+qFB+Q4YM4fvvv+fXX3/l119/Zdu2bQwZMsShfQ0GA2+88QaJiYm0atWK5cuXs337dnbv3g3AmDFj+OSTT6zrmO3Zs4f9+/czcuRIu/nVqVOH119/neeff56aNWvSrVs3Zs2axbFjx+ymHzVqFMuWLQMsnYV79+5d7qziR48eZdGiRTz00EMOlVGh+Keg7rg4iFd7c7ceBfs+ht/3wIZn4L6UcnfRarUkJiZe731kAxgLoVZ9qP0v9/hWklLdqzie9A7w03JoZk+X5VcyGZqvr2+5dz4C/FxXvtmzZ/Pkk0/y7bffsmvXLhYvXsycOXPYunUrzZs3L3f/koXmNBoN4eHh9OnTh5SUFIQQ9OnTh7CwMIc8fH19ue2226z/N27cmJCQEDIzM2nTpg39+/dn3LhxrF69mkGDBpGSkkLXrl2Jj48vNc9x48YxbNgwMjIy2LlzJytXrmTOnDl8+eWX9OjRw3qeNRoNQ4YMYcqUKRw7doyUlBRef/31Mn1Pnz5NUlIS9913H2PHuuAurBPI+vkEed1l9QY1qsireLU3t48W+r4GGq2lmedIevm7+PgQERFxvbd1NFH/KttMVKp7FceT3hqNhkCdr8se1fR+BFcLoJrer9y0rh55FBoayn333cf8+fPJzMwkOjra4T4bGo3G5nyPGjWKlJQUli9fzqhRo1zmqNPpGDZsGMnJyRQXF/Pxxx87lH9QUBB9+/Zl9uzZ/Pzzz3Ts2JEXX3zR6l7yNzQ0lLvuuovRo0dTWFhIr169Ss3z999/p2vXrrRv395m9nBPIevnE+R1l9Ub1Kgir+LKKbMrRNTNf61dtO5JKM4vM7nBYGDdunW23sVX/wp6qnAzkV13CZDVGyydXC9duoTZbPaqh06no0GDBly9etWh9GazmeLiYmsHwKSkJIqLizEYDPTs6fgdKaPRyI8//mj9Pysri0uXLtGkyV9zHI0ZM4ZvvvmGt956C6PRyIABAxzOHywBSuPGja1lKznXJX9HjRpFRkYGw4YNK/VX6unTp+nSpQutWrUiOTnZKxWZzNe5rO6yeoN76k7VVCQTXZ6x3DG5dBK2zvtrXaNSuG4Y2pGNYCyAmvEQ6fxCk55ExmF/IK+3O8nNzbWuzF5CaGgoP//8MytWrGDQoEE0atQIIQRfffUVaWlp1w0PdhStVktmZqb1uaP4+fnx2GOP8frrr+Pr68v48eNp164dbdq0saZp0qQJ7dq1Y/LkyYwaNco6Asge+/btY/r06QwdOpSmTZui0+nYsmULy5YtY/LkyXb3SUpK4ty5c9SoUcPu6yVBS1xcHPPnz+fcuXPW164daeUJZL7OZXWX1dsdqMBFJvTVoffLsOIB2L4Imt8PtZ0YzixBM5Hin0dGRgYtW7a02TZ69GimTp1KYGAgEydO5NSpU+j1em666SaWLFnC0KFDK3y80ir+sggMDGTy5MkMHjyY06dP07FjR5YuXXpdutGjR7N9+/Zym4nq1q1LfHw8M2bM4MSJE2g0Guv/EyZMsLuPRqMps09Oeno6R48e5ejRo9StW9fmNRmHySoUFUUFLrLRuDc0vsuyjtHaJ2Dkesv6RuVRnG+54wJVuplI8c8iJSWFlJSUUl93po/GiRMn7G5/6623ygxW1qxZU2a+I0aMsM6sW17zz+nTp2nevLlNR157hIWF8dprr5WZBuDixYuluoeEhNgEJNd6KhQ3MqqPi4OUTJBVJej1v6CrDqd2wZ7ldpP4+vrStWvXv7yPpoMh37KMQFQLz7lWgOvcJUFWb7D82g8KCpJu3RxPeV+5coUDBw7wxhtv8Nhjj7kkT1nPuczXuazusnqDe+pOFbjISHBd6Pqs5fk30+HKWbvJbNrgJWsmKqv/QFVGVm9Augq0BE94jx8/nlatWtGlSxeXjlaS9ZzLfJ3L6i6rtztQgYuDVLmOUW3+Y+lgW5gLG5697mWj0UhaWprF21BgWQ0apGgmsnGXCFm9wTtrFbkCT3mnpKRQVFTEp59+6rJ5KWQ95zJf57K6y+oN7qk7VeAiK1rf/5/bxQf2f2ZZFqA0jn4DhqsQHAvRt3rOUaFQKBQKF6MCF5mpcyvc9v+zZq6baLmzYg9rM9HdUjQTKRQKhUJRGipwkZ1uz0FQFFw4Bt+9cv3rxkL473rL86b9PaqmUCgUCoWr0QjZGlg9TF5eHsHBwVy6dIng4GBv69jn0Bfw2TDw8YNHtkF4wl9rzxzdgObTB6FGXZhwQIo7Ls6sm1OVcJd3YWEhx48fp169evj7+7ss32sRQiCEQKPRSHfOZfQGz7i749qR9fMJ8rrL6g2WCShDQkLIzc2t0BxL9lB3XP4JNLkbbuoJZgOsnQD/H4sWFBRA5heWNE37SRG0lFBQUEqzVxVHVm+QdxIzWb1BXneZr3NZ3WX1dgcqcHGQKt2bW6OxzKjrFwi/boN9H2E0GtmyaSNkfW1J07Sfdx2dwGg0snnz5qp9zu0gqzdYKtDLly9LV5HK6g3yust8ncvqLqs3qFFFirKoGQddplieb5wG+ecJv3wATdFlCIqGumXP9KlQ/JOJj49n4cKF3tZQKBQuQAUu/yTaPQq1/wUFF9Bumk70pd2W7U37ObYsgELhYs6dO8cjjzxCbGwser2eyMhIevbsybZt26xp4uPj0Wg0rFix4rr9mzVrhkajsS4bcOHCBR577DESEhIICAggPj6eyZMnk5ub66kiWcnIyECj0XDp0iW7r+fn5/PMM8/QoEED/P39CQ8Pp3PnznzxxRecOHECrVZLzZo10Wq11n4u1z5SUlKsx6hZsyaFhYU2+f/www9S9u1RKCqLqs3+SWj94K6FgAafX1ZQ5+I1gYtkyDi1Ncjr7S7uuece9u7dy/Lly/nvf//Ll19+SZcuXTh//rxNupiYmOtWhN65cydnzpyhWrVq1m2///47v//+O/Pnz+fAgQMsW7aMTZs2MWbMGI+UxxkefvhhUlNTWbRoEYcPH2b9+vXce++9nD9/npiYGE6fPs3hw4c5ffo0EydOpFmzZuTk5FgfAwcOtOYVFBTE6tWrbfJfunQpsbGxni4WIPd1Lqu7rN5uQSjKJDc3VwAiNzfX2yqO89UEIabXsDzmJwhhMnnbSFEJCgoKxKFDh0RBQcFfG81mIYqueOdhNjvkffHiRQGIjIyMMtPFxcWJKVOmCL1eL06ePGndPnbsWPHYY4+J4OBgkZycXOr+n332mdDpdMJgMJR5jJkzZ4pBgwaJwMBAER0dLd544w3r6yNHjhR9+vSx2ae4uFiEh4eLJUuW2M1z8+bNAhAXL160+3pwcLBISUkp1elapk+fLm655ZZSj/Hcc8+J7t27W7fn5+eL4OBgMW3aNFHW17jda0eh8CDuqENVCOcgZrPZ2wqOc8fziIOpaAouIup1QiNZM5HZbObPP/8kLCwMH4ncPeptyIc50e49RmlM/R101cpNVr16dapXr86aNWto164der2+1LS1a9emZ8+eLF++nOeee478/Hw+/fRTtmzZwvvvv1/qfkIILly4QI0aNcr9Rfryyy8zdepUZsyYwYYNG3j88cdp1KgRPXr0YMyYMXTq1ImcnByioqIAWLt2Lfn5+TZ3PpwhMjKStLQ0BgwYQFBQkF33kiGu5TF06FBefvllTp48SWxsLKtWrSI+Pp5bb/X8TNiyfj5BXndZvcE9dadcZ8CLmEwmbys4TkAIpt4L+T24NcbEJ7xt4zQmk4kdO3bIdc6R19td+Pr6kpKSwvLlywkJCaFDhw5MnTqVX375xW76UaNGkZKSghCCzz//nAYNGtCiRYsyj3Hu3DlefPFFxo4dW65Phw4dmDJlCo0aNeKxxx7j3nvvZcGCBQC0b9+ehIQEPvjgA2v65ORk7rvvPqpXr+54oa/h3XffZfv27YSGhnLbbbcxYcIEm749QgiuXr3q0KiiiIgIevXqZe3rs2zZMpcu9ugMMl/nsrrL6g3uqTvVHZd/KKJxH344pqF32E3eVlG4A79Ay50PF2E2m8m7fJkaQUHl/6LzC3Q433vuuYc+ffrw3XffsXPnTr7++mvmzZvHkiVLGDFihE3aPn368NBDD7F161aHKua8vDz69u1LQkIC06dPL9clMTHxuv+vHWk0ZswY3n33XZ5++mn++OMPvv76a779tow1wMqhU6dOHDt2jJ07d7J9+3Y2bdrEa6+9xowZM5g2bZrT+Y0aNYrHH3+cIUOGsGPHDlauXMl3331XYT+FQlbUHReFQkY0GktzjSsffoGOpXNyFIu/vz89evRg2rRpbN++nREjRtgNNHx9fRk6dCjTp09n165dPPjgg6XmefnyZZKSkggKCuLDDz/Ez8/P6VP4d4YNG8axY8fYsWMHH374IfXq1aNjx46VytPPz4+OHTsyefJkNm7cyMyZM5k1axbFxcVO59WrVy8KCgoYPXo0ffv2JTQ0tFJuCoWsqMDFQWQbcqjRaAgKCpLOG+R1l9UbLO4+Pj4ecW/atClXr161+9qoUaPYsmUL/fr1o2bNmnbT5OXlceedd6LT6fjiiy8IDAx0yHvnzp3X/d+kSRPr/6GhofTv35/k5GRSUlIYOXKkE6VyjKZNm2I0GiksLHT6nPv6+jJs2DAyMjK81kwE8l/nMrrL6g3uqTtVU5GDyDYUzdfXl27dunlbo0LI6i6rN1i+XFy1jkgJ58+f57777mPUqFHcfPPNBAUF8eOPPzJv3jz69bM/RL9Jkyb8+eefBAbab44qCVry8/P58MMPuXz5MmCZMyU8PBytVluqz7Zt25g3bx79+/cnPT2dlStXsm7dOps0Y8aM4a677sJkMjF8+HCHyrl//36bzrcajYZbbrmFLl268MADD9C6dWtCQ0M5dOgQU6dOpWvXrtZz7ew5nzVrFpMmTfLq3RaZr3NZ3WX1BvfUnXLVxl5EqlFFWHxPnTpFTEyMlL3QZXSX1RssHUWLi4vR6XQu+4VUvXp12rZty4IFC8jOzsZgMBATE8PYsWOZOnVqqfuVVSnv2bOHXbt2AdCwYUOb144fP058fHyp+06cOJEff/yRGTNmUKNGDV599VV69uxpk6Z79+5ERUXRrFkzoqMdG7XVqVMnm/+1Wi1Go9E6Smrq1Knk5+cTHR3NXXfdxfPPPw/YnnNH0el0hIWFOZzeHch8ncvqLqs3uKfuVKtDl0PJ6tB//vmnVG3KBoOBtLQ0evfu7ZL2f08iq7u7vD2xOrTZbCYvL48aNWpI9cXoau8rV65Qp04dkpOTGTBggAsMS8cT59wd146sn0+Q111Wb7DceQ0LC3Pp6tDqjotCobjhKZkn45VXXiEkJIS7777b20oKhaIUVOCiUChueE6ePEm9evWoW7cuKSkp0vVpUyhuJNSn00Fk682t0WgIDw+XzhvkdZfVGyzuvr6+0rm7yjs+Pt6hieBcicznXObrXEZ3Wb3BPXWn6uNSDiV9XFzZPqdQOIMn+rgo/pmoa0fhbdxRh8rTC8/LyDbVsslk4vDhw9J5g7zu7vZ2528MIQQFBQUev+tQWWT1Bs+4uyNvWT+fIK+7rN7gnrpTBS4OIuNw6KysLOm8QV53d3mXjCLIz893ab7XIoSgqKhIugBAVm/wjHvJNePKkSiyfj5BXndZvcE9dafq46JQVHG0Wi0hISGcPXsWwOGZYp3BbDZTXFxMYWGhdMOhZfQG97oLIcjPz+fs2bOEhISUOTGfQiEbKnBRKCQgMjISwBq8uJqSZouAgACpOgDK6g2ecQ8JCbFeOwrFPwUVuDiIbL/mfHx8iI2Nlc4b5HV3p7dGoyEqKoqIiAgMBoPL8zeZTGRlZREXFyfVr3NZvcH97n5+fm7JV9bPJ8jrLqs3uKfuVKOKykGNKlIoFAqFomKoUUVeRLbe3CaTib1790rnDfK6y+oN8rrL6g3yusvqDfK6y+oNalSRV5GtN7fZbObkyZPSeYO87rJ6g7zusnqDvO6yeoO87rJ6g3vqThW4KBQKhUKhkAbVObccSroAXb58WapVOQ0GA/n5+eTl5UnlDfK6y+oN8rrL6g3yusvqDfK6y+oNlroTXDsZogpcyuH8+fMA1KtXz8smCoVCoVDIyfnz5wkODnZJXipwKYdatWoBltVjXXXSPUFeXh4xMTGcOnVKutFQsrrL6g3yusvqDfK6y+oN8rrL6g2Qm5tLbGystS51BSpwKYeSMejBwcHSXTAANWrUkNIb5HWX1RvkdZfVG+R1l9Ub5HWX1RtcO5+L6pyrUCgUCoVCGlTgolAoFAqFQhpU4FIOer2e6dOno9frva3iFLJ6g7zusnqDvO6yeoO87rJ6g7zusnqDe9zVlP8KhUKhUCikQd1xUSgUCoVCIQ0qcFEoFAqFQiENKnBRKBQKhUIhDSpwUSgUCoVCIQ0qcAHefPNN4uPj8ff3p23btuzevbvM9CtXrqRx48b4+/vTvHlz0tLSPGRqizPeBw8e5J577iE+Ph6NRsPChQs9J2oHZ9zfe+89OnbsSM2aNalZsybdu3cv9z1yF854p6am0rp1a0JCQqhWrRotWrTggw8+8KCtLc5e5yWsWLECjUZD//793StYCs54p6SkoNFobB7+/v4etLXF2XN+6dIlxo0bR1RUFHq9nkaNGnnl+8UZ7y5dulx3zjUaDX369PGg8V84e84XLlxIQkICAQEBxMTEMGHCBAoLCz1k+xfOeBsMBmbOnEmDBg3w9/fnlltuYf369R60tbB161b69u1LdHQ0Go2GNWvWlLtPRkYGt956K3q9noYNG5KSkuL8gcUNzooVK4ROpxPLli0TBw8eFGPHjhUhISHijz/+sJt+27ZtQqvVinnz5olDhw6J5557Tvj5+Yn9+/dXae/du3eLp556SnzyySciMjJSLFiwwKO+1+Ks++DBg8Wbb74p9u7dKzIzM8WIESNEcHCw+O2336q09+bNm0Vqaqo4dOiQOHr0qFi4cKHQarVi/fr1HvUWwnn3Eo4fPy7q1KkjOnbsKPr16+cZ2Wtw1js5OVnUqFFD5OTkWB9nzpzxsLUFZ92LiopE69atRe/evcX3338vjh8/LjIyMsS+ffuqtPf58+dtzveBAweEVqsVycnJHvUWwnn3jz76SOj1evHRRx+J48ePiw0bNoioqCgxYcKEKu399NNPi+joaLFu3TqRnZ0t3nrrLeHv7y/27NnjUe+0tDTx7LPPitTUVAGI1atXl5n+2LFjIjAwUDz55JPi0KFDYtGiRRX6TrzhA5c2bdqIcePGWf83mUwiOjpazJ071276+++/X/Tp08dmW9u2bcVDDz3kVs+/46z3tcTFxXk1cKmMuxBCGI1GERQUJJYvX+4uRbtU1lsIIVq2bCmee+45d+iVSUXcjUajaN++vViyZIkYPny4VwIXZ72Tk5NFcHCwh+zKxln3t99+W9SvX18UFxd7StEulb3OFyxYIIKCgsSVK1fcpVgqzrqPGzdOdOvWzWbbk08+KTp06OBWz7/jrHdUVJR44403bLYNGDBAPPjgg271LAtHApenn35aNGvWzGbbwIEDRc+ePZ061g3dVFRcXMxPP/1E9+7drdt8fHzo3r07O3bssLvPjh07bNID9OzZs9T07qAi3lUFV7jn5+djMBhcumhXeVTWWwjBpk2byMrKolOnTu5UvY6Kus+cOZOIiAhGjx7tCc3rqKj3lStXiIuLIyYmhn79+nHw4EFP6NpQEfcvv/ySxMRExo0bR+3atfnXv/7FnDlzMJlMntJ2yedz6dKlDBo0iGrVqrlL0y4VcW/fvj0//fSTtVnm2LFjpKWl0bt3b484Q8W8i4qKrmsCDQgI4Pvvv3era2VxVf15Qwcuf/75JyaTidq1a9tsr127NmfOnLG7z5kzZ5xK7w4q4l1VcIX75MmTiY6Ovu4D4E4q6p2bm0v16tXR6XT06dOHRYsW0aNHD3fr2lAR9++//56lS5fy3nvveULRLhXxTkhIYNmyZXzxxRd8+OGHmM1m2rdvz2+//eYJZSsVcT927Biff/45JpOJtLQ0pk2bxiuvvMKLL77oCWWg8p/P3bt3c+DAAcaMGeMuxVKpiPvgwYOZOXMmt99+O35+fjRo0IAuXbowdepUTygDFfPu2bMnr776KkeOHMFsNpOenk5qaio5OTmeUK4wpdWfeXl5FBQUOJzPDR24KOTjpZdeYsWKFaxevdqrnS4dJSgoiH379vHDDz8we/ZsnnzySTIyMrytVSaXL19m6NChvPfee4SFhXlbxykSExMZNmwYLVq0oHPnzqSmphIeHs4777zjbbVyMZvNRERE8O6779KqVSsGDhzIs88+y+LFi72t5jBLly6lefPmtGnTxtsqDpGRkcGcOXN466232LNnD6mpqaxbt45Zs2Z5W61MXnvtNW666SYaN26MTqdj/PjxjBw50qUrMFdlfL0t4E3CwsLQarX88ccfNtv/+OMPIiMj7e4TGRnpVHp3UBHvqkJl3OfPn89LL73EN998w8033+xOzeuoqLePjw8NGzYEoEWLFmRmZjJ37ly6dOniTl0bnHXPzs7mxIkT9O3b17rNbDYD4OvrS1ZWFg0aNHCvNK65zv38/GjZsiVHjx51h2KpVMQ9KioKPz8/tFqtdVuTJk04c+YMxcXF6HQ6tzpD5c751atXWbFiBTNnznSnYqlUxH3atGkMHTrUeoeoefPmXL16lf/85z88++yzHgkEKuIdHh7OmjVrKCws5Pz580RHRzNlyhTq16/vdt/KUFr9WaNGDQICAhzO58YIz0pBp9PRqlUrNm3aZN1mNpvZtGkTiYmJdvdJTEy0SQ+Qnp5eanp3UBHvqkJF3efNm8esWbNYv349rVu39oSqDa4652azmaKiIncoloqz7o0bN2b//v3s27fP+rj77rvp2rUr+/btIyYmpkp628NkMrF//36ioqLcpWmXirh36NCBo0ePWoNEgP/+979ERUV5JGiByp3zlStXUlRUxJAhQ9ytaZeKuOfn518XnJQEjsJDy/hV5pz7+/tTp04djEYjq1atol+/fu7WrRQuqz+d6zf8z2PFihVCr9eLlJQUcejQIfGf//xHhISEWIdQDh06VEyZMsWaftu2bcLX11fMnz9fZGZmiunTp3ttOLQz3kVFRWLv3r1i7969IioqSjz11FNi79694siRIx71roj7Sy+9JHQ6nfj8889thl1evny5SnvPmTNHbNy4UWRnZ4tDhw6J+fPnC19fX/Hee+951Lsi7n/HW6OKnPWeMWOG2LBhg8jOzhY//fSTGDRokPD39xcHDx6s8u4nT54UQUFBYvz48SIrK0usXbtWREREiBdffLFKe5dw++23i4EDB3rU9e846z59+nQRFBQkPvnkE3Hs2DGxceNG0aBBA3H//fdXae+dO3eKVatWiezsbLF161bRrVs3Ua9ePXHx4kWPel++fNlarwDi1VdfFXv37hW//vqrEEKIKVOmiKFDh1rTlwyHnjRpksjMzBRvvvmmGg5dURYtWiRiY2OFTqcTbdq0ETt37rS+1rlzZzF8+HCb9J999plo1KiR0Ol0olmzZmLdunUeNrbgjPfx48cFcN2jc+fOnhcXzrnHxcXZdZ8+fXqV9n722WdFw4YNhb+/v6hZs6ZITEwUK1as8LhzCc5e59fircBFCOe8n3jiCWva2rVri969e3t8botrcfacb9++XbRt21bo9XpRv359MXv2bGE0Gj1s7bz34cOHBSA2btzoYdPrccbdYDCIF154QTRo0ED4+/uLmJgY8eijj3o8AHDWOyMjQzRp0kTo9XoRGhoqhg4dKk6fPu1x582bN9v9bi5xHT58+HV1zObNm0WLFi2ETqcT9evXr9B8PxohPHQ/TKFQKBQKhaKS3NB9XBQKhUKhUMiFClwUCoVCoVBIgwpcFAqFQqFQSIMKXBQKhUKhUEiDClwUCoVCoVBIgwpcFAqFQqFQSIMKXBQKhUKhUEiDClwUCoVCoVBIgwpcFApFlWPEiBH079/f+n+XLl144oknPO6RkZGBRqPh0qVLHj+2QqGwjwpcFAqFQ4wYMQKNRoNGo0Gn09GwYUNmzpyJ0Wh0+7FTU1OZNWuWQ2k9HWzEx8dbz0tgYCDNmzdnyZIlHjm2QnEjogIXhULhMElJSeTk5HDkyBEmTpzICy+8wMsvv2w3bXFxscuOW6tWLYKCglyWn6uZOXMmOTk5HDhwgCFDhjB27Fi+/vprb2spFP9IVOCiUCgcRq/XExkZSVxcHI888gjdu3fnyy+/BP5q3pk9ezbR0dEkJCQAcOrUKe6//35CQkKoVasW/fr148SJE9Y8TSYTTz75JCEhIYSGhvL000/z9yXU/t5UVFRUxOTJk4mJiUGv19OwYUOWLl3KiRMn6Nq1KwA1a9ZEo9EwYsQIAMxmM3PnzqVevXoEBARwyy238Pnnn9scJy0tjUaNGhEQEEDXrl1tPMsiKCiIyMhI6tevz+TJk6lVqxbp6elOnFmFQuEoKnBRKBQVJiAgwObOyqZNm8jKyiI9PZ21a9diMBjo2bMnQUFBfPfdd2zbto3q1auTlJRk3e+VV14hJSWFZcuW8f3333PhwgVWr15d5nGHDRvGJ598wuuvv05mZibvvPMO1atXJyYmhlWrVgGQlZVFTk4Or732GgBz587l/fffZ/HixRw8eJAJEyYwZMgQtmzZAlgCrAEDBtC3b1/27dvHmDFjmDJlilPnw2w2s2rVKi5evIhOp3NqX4VC4SCVXNVaoVDcIAwfPlz069dPCCGE2WwW6enpQq/Xi6eeesr6eu3atUVRUZF1nw8++EAkJCQIs9ls3VZUVCQCAgLEhg0bhBBCREVFiXnz5llfNxgMom7dutZjCSFE586dxeOPPy6EECIrK0sAIj093a7n5s2bBSAuXrxo3VZYWCgCAwPF9u3bbdKOHj1aPPDAA0IIIZ555hnRtGlTm9cnT558XV5/Jy4uTuh0OlGtWjXh6+srAFGrVi1x5MiRUvdRKBQVx9e7YZNCoZCJtWvXUr16dQwGA2azmcGDB/PCCy9YX2/evLnNnYaff/6Zo0ePXtc/pbCwkOzsbHJzc8nJyaFt27bW13x9fWnduvV1zUUl7Nu3D61WS+fOnR32Pnr0KPn5+fTo0cNme3FxMS1btgQgMzPTxgMgMTHRofwnTZrEiBEjyMnJYdKkSTz66KM0bNjQYT+FQuE4KnBRKBQO07VrV95++210Oh3R0dH4+tp+hVSrVs3m/ytXrtCqVSs++uij6/IKDw+vkENAQIDT+1y5cgWAdevWUadOHZvX9Hp9hTyuJSwsjIYNG9KwYUNWrlxJ8+bNad26NU2bNq103gqFwhbVx0WhUDhMtWrVaNiwIbGxsdcFLfa49dZbOXLkCBEREdaKveQRHBxMcHAwUVFR7Nq1y7qP0Wjkp59+KjXP5s2bYzabrX1T/k7JHR+TyWTd1rRpU/R6PSdPnrzOIyYmBoAmTZqwe/dum7x27txZbhn/TkxMDAMHDuSZZ55xel+FQlE+KnBRKBRu48EHHyQsLIx+/frx3Xffcfz4cTIyMvif//kffvvtNwAef/xxXnrpJdasWcPhw4d59NFHy5yDJT4+nuHDhzNq1CjWrFljzfOzzz4DIC4uDo1Gw9q1azl37hxXrlwhKCiIp556igkTJrB8+XKys7PZs2cPixYtYvny5QA8/PDDHDlyhEmTJpGVlcXHH39MSkpKhcr9+OOP89VXX/Hjjz9WaH+FQlE6KnBRKBRuIzAwkK1btxIbG8uAAQNo0qQJo0ePprCwkBo1agAwceJEhg4dyvDhw0lMTCQoKIh///vfZeb79ttvc++99/Loo4/SuHFjxo4dy9WrVwGoU6cOM2bMYMqUKdSuXZvx48cDMGvWLKZNm8bcuXNp0qQJSUlJrFu3jnr16gEQGxvLqlWrWLNmDbfccguLFy9mzpw5FSp306ZNufPOO3n++ecrtL9CoSgdjSitB5xCoVAoFApFFUPdcVEoFAqFQiENKnBRKBQKhUIhDSpwUSgUCoVCIQ0qcFEoFAqFQiENKnBRKBQKhUIhDSpwUSgUCoVCIQ0qcFEoFAqFQiENKnBRKBQKhUIhDSpwUSgUCoVCIQ0qcFEoFAqFQiENKnBRKBQKhUIhDf8H2ggF1whX/gQAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 600x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(6, 6))\n",
    "\n",
    "cross_comparison['SM2_B-W'] = cross_comparison['sm2_p'] - cross_comparison['y']\n",
    "cross_comparison['SM2_bin'] = cross_comparison['sm2_p'].map(lambda x: round(x, 1))\n",
    "cross_comparison[f'{network}_B-W'] = cross_comparison['p'] - cross_comparison['y']\n",
    "cross_comparison[f'{network}_bin'] = cross_comparison['p'].map(lambda x: round(x, 1))\n",
    "\n",
    "plt.axhline(y = 0.0, color = 'black', linestyle = '-')\n",
    "\n",
    "cross_comparison_group = cross_comparison.groupby(by='SM2_bin').agg({'y': ['mean'], f'{network}_B-W': ['mean'], 'p': ['mean', 'count']})\n",
    "print(f\"Universal Metric of {network}: {mean_squared_error(cross_comparison_group['y', 'mean'], cross_comparison_group['p', 'mean'], sample_weight=cross_comparison_group['p', 'count'], squared=False):.4f}\")\n",
    "cross_comparison_group['p', 'percent'] = cross_comparison_group['p', 'count'] / cross_comparison_group['p', 'count'].sum()\n",
    "plt.scatter(cross_comparison_group.index, cross_comparison_group[f'{network}_B-W', 'mean'], s=cross_comparison_group['p', 'percent'] * 1024, alpha=0.5)\n",
    "plt.plot(cross_comparison_group[f'{network}_B-W', 'mean'], label=f'{network} by SM2')\n",
    "\n",
    "cross_comparison_group = cross_comparison.groupby(by=f'{network}_bin').agg({'y': ['mean'], 'SM2_B-W': ['mean'], 'sm2_p': ['mean', 'count']})\n",
    "print(f\"Universal Metric of SM2: {mean_squared_error(cross_comparison_group['y', 'mean'], cross_comparison_group['sm2_p', 'mean'], sample_weight=cross_comparison_group['sm2_p', 'count'], squared=False):.4f}\")\n",
    "cross_comparison_group['sm2_p', 'percent'] = cross_comparison_group['sm2_p', 'count'] / cross_comparison_group['sm2_p', 'count'].sum()\n",
    "plt.scatter(cross_comparison_group.index, cross_comparison_group['SM2_B-W', 'mean'], s=cross_comparison_group['sm2_p', 'percent'] * 1024, alpha=0.5)\n",
    "plt.plot(cross_comparison_group['SM2_B-W', 'mean'], label=f'SM2 by {network}')\n",
    "\n",
    "plt.legend(loc='lower center')\n",
    "plt.grid(linestyle='--')\n",
    "plt.title(f\"SM2 vs. {network}\")\n",
    "plt.xlabel('Predicted R')\n",
    "plt.ylabel('B-W Metric')\n",
    "plt.xlim(0, 1)\n",
    "plt.xticks(np.arange(0, 1.1, 0.1))\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "fsrs4anki",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.13"
  },
  "orig_nbformat": 4
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
